Question Tableau 2 dimensions

Plus d'informations
il y a 17 ans 3 mois #3520 par Laurent Dardenne
Réponse de Laurent Dardenne sur le sujet Re:Tableau 2 dimensions
Salut,
la ligne suivante n'est tout compte fait pas nécessaire :
[code:1]
$Type=$CompList[0].GetType()
[/code:1]
La syntaxe nécessite bien le signe dollar, c'est une erreur de ma part :
[code:1]
$Tab[$Index]=@{ ...
[/code:1]
Bien qu'ici l'unicité soit respecté, l'opérateur like peut renvoyer plusieurs objets.

Pour accélérer la recherche tu peux peut-être utiliser la méthode IndexOf ou Contains de la classe SearchResultCollection.

En suivant les conseils de MSDN, en fin de traitement, il faut libérer manuellement les ressources de la collection :
msdn.microsoft.com/fr-fr/library/system.....findall(VS.80).aspx
[code:1]
$complistgoudurix.Dispose()
$complistkeskonrix.Dispose()
$complistramollix.Dispose()
[/code:1]
Pour info le regroupement des données peut peut-être se faire avec le cmdlet Group, enfin à vérifier.<br><br>Message édité par: Laurent Dardenne, à: 19/12/08 15:52

Tutoriels PowerShell

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 17 ans 3 mois #3523 par clem
Réponse de clem sur le sujet Re:Tableau 2 dimensions
Ca fonctionne bien, me reste juste à implementer la recherche de la date la plus récente.

Merci de ton aide, je tacherai d'etre plus precis à l'avenir ;-)<br><br>Message édité par: clem, à: 19/12/08 15:23

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 17 ans 3 mois #3524 par Laurent Dardenne
Réponse de Laurent Dardenne sur le sujet Re:Tableau 2 dimensions
clem écrit:

me reste juste à implementer la recherche de la date la plus récente.

Mieux vaut peut être dans ce cas ne mémoriser qu'une seule date, la plus récente. C'est à dire que tu intègres la comparaison de la date dans les itérations, ainsi en fin de traitement ton info est disponible directement. Les dates de logon les plus anciennes n'étant pas utilisés, enfin si j'ai bien compris.
clem écrit:

Merci de ton aide,

De rien.
clem écrit:

je tacherai d'etre plus precis à l'avenir

Et moi d'arrondir mes angles :P

Tutoriels PowerShell

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 17 ans 2 mois #3541 par clem
Réponse de clem sur le sujet Re:Tableau 2 dimensions
Laurent Dardenne écrit:

Mieux vaut peut être dans ce cas ne mémoriser qu'une seule date, la plus récente.


Oui, effectivement, je vais suivre ce conseil.

Par contre comment implémenter IndexOf ou Contains de la classe SearchResultCollection ?

Pour info sur ce lien que j'ai trouvé sur le forum (il me semble!)
www.microsoft.com/technet/scriptcenter/t...winpsh/searchad.mspx

Il est indiqué,pour les requetes lourdes(sur tous les users du domaine par exemple),comment récuperer seulement les propriétés des objets qui nous interessent (au lieu de toutes par defaut)

Par exemple :
[code:1]#requete de tous les users sur le premier DC
$de = new-object system.directoryservices.directoryentry (\&quot;LDAP://$dcgoudurix/dc=mondomaine,dc=fr\&quot;«»)
$ads = new-object system.directoryservices.directorysearcher -argumentlist $de,$ldapQuery


$colProplist = \&quot;name\&quot;,\&quot;lastlogon\&quot;,\&quot;mail\&quot; #etc...
foreach ($i in $colPropList){$ads.PropertiesToLoad.Add($i)}

$complistgoudurix = $ads.findall()[/code:1]

Ce qui accèlere la requete et soulage le réseaux<br><br>Message édité par: clem, à: 21/12/08 21:18

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 17 ans 2 mois #3546 par Laurent Dardenne
Réponse de Laurent Dardenne sur le sujet Re:Tableau 2 dimensions
Je pensais à qq chose comme ceci :
[code:1]
$date=Get-UTCAge $user_goudurix.properties.item(\&quot;lastlogon\&quot;«»)[0]
$idx=$complistkeskonrix.IndexOf($user_goudurix)
if ($Idx -ge 0)
{
$Current=Get-UTCAge $complistkeskonrix[$Idx].properties.item(\&quot;lastlogon\&quot;«»)[0]
if ([System.DateTime]::Compare($Date,$Current ) -eq -1)
{ # $Current est &gt; à $Date
$Date=$Current
}
}
#ou
if ($complistkeskonrix.IndexOf($user_goudurix.properties.name) -ge 0)
...
[/code:1]
C'est à tester donc, de plus j'ai un doute sur le type de l'objet à lui passer :/
Je pensais que cela serait plus simple...

Tutoriels PowerShell

Connexion ou Créer un compte pour participer à la conversation.

Temps de génération de la page : 0.092 secondes
Propulsé par Kunena