Syntaxe Foreach Copy-item

Signaler
-
Messages postés
38462
Date d'inscription
jeudi 4 avril 2002
Statut
Modérateur
Dernière intervention
28 avril 2021
-
Bonjour,

Je souhaite commencer en remerciant Choubaka qui m'a aidé pour mon problème de script.

Voici mon nouveau et dernier problème ( car ensuite je ne ferais normalement plus de scripte durant cette formation).

Je dois dont récupérer le contenue du dossier "documents" des ordinateur de mon Active Directory.

pour ce faire je fait:

$Ordinateurs = Get-ADComputer -Filter * | Select-Object -ExpandProperty Name

Foreach ($Ordinateur in $Ordinateurs)

{
Copy-Item \\$($Ordianteur)\Documents -Destination 'c:\SAV' -Recurse
}

Et bien évidement cela ne fonctionne pas.
Le but étant que la boucle aille chercher autant d'ordinateur qu'il y a dans l'active directory t de faire la copy de leur dossier documents.

Tout fonctionne sauf la boucle, il trouve bien la liste des ordinateur mais la partie copy-item dans la boucle ne fonctionne pas.

Une nouvelle fois, merci de tout aide apporté.

Cordialement

3 réponses

Messages postés
38462
Date d'inscription
jeudi 4 avril 2002
Statut
Modérateur
Dernière intervention
28 avril 2021
1 959
bonjour
La syntaxe de copie de dossier peut donner ceci.
je copie le contenu du dossier "test1" vers le dossier test2

Copy-Item C:\temp\test1 -Recurse C:\temp\test2

Bonjour et merci de votre réponse.
Ma syntaxe copy-item de base est bonne quand elle est seule. Mon problème et de la faire prendre en compte par la boucle de Foreach. C’est à dire que le copy-item doit s’exécuter pour chaque ordinateur d’Active Directory.
Du coup quand je modifie le copy-item avec $Ordinateur et que je le fait rentrer dans Foreach, cela ne fonctionne pas. Je pense que ma syntaxe n’est pas bonne.
Messages postés
38462
Date d'inscription
jeudi 4 avril 2002
Statut
Modérateur
Dernière intervention
28 avril 2021
1 959
ok, j'y pensais

le fait est que tu récupéres un objet AD. si tu veux utiliser l'info dans ton chemin de dossier, il te faut récupérer le nom (hostname) (ou l'adresse IP) de l'ordinateur courant.