Auteur de questions
Création d'une arborescence

Question
-
Une seconde question , que j'ai commencé mais qui ne fait pas mon résultat souhaité, c'est a dire que je voudrais qu'il me crée une arborescence de type :
Bureau-01
01-Commun
02-droit
Fournisseur
Client
03-devis
Grands comptes
Particulier
Bureau-02
01-Commun
02-droit
Fournisseur
Client
03-devis
Grands comptes
Particulier
J'ai fait ce début de script , où dans liste.txt j'ai mes numéros de bureau et dans listing.txt j'ai mon arborescence. A l'heure actuelle, il me crée bien mes bureau mais il ne me met pas l’arborescence dedans.
$liste = Get-Content c:\test\liste.txt
Import-Csv $liste
Get-Content "c:\test\liste.txt" | Foreach-Object { New-Item -type directory -path c:\test -name bureau-$liste }
Get-Content "c:\test\listing.txt" | Foreach-Object { New-Item -type directory -path $liste }merci de votre aide
Toutes les réponses
-
pour être plus visuel ça ressemble à ça ?
Bureau-01 -| |- 01-Commun |- 02-droit -| | |- Fournisseur | |- Client | |- 03-devis -| |- Grands comptes |- Particulier Bureau-02 -| |- 01-Commun |- 02-droit -| | |- Fournisseur | |- Client | |- 03-devis -| |- Grands comptes |- Particulier
-
salut klere
de retour pour te donné une solution :
d'abord l'astuce : quand on utilise new-item pour créé un dossier il va créé aussi les sous dossiers intermédiaire si ils n'existe pas !!
donc la ligne suivante va créé les dossiers "bureau-01", "02-droit", "Fournisseur" en une seul commande !
New-Item -type directory -path C:\Bureau-01\02-droit\Fournisseur
pour ton exemple tu n'aurais a faire que ceci :
New-Item -type directory -path C:\Bureau-01\01-Commun New-Item -type directory -path C:\Bureau-01\02-droit\Fournisseur New-Item -type directory -path C:\Bureau-01\02-droit\Client New-Item -type directory -path "C:\Bureau-01\03-devis\Grands comptes" New-Item -type directory -path C:\Bureau-01\03-devis\Particulier New-Item -type directory -path C:\Bureau-01\01-Commun New-Item -type directory -path C:\Bureau-01\02-droit\Fournisseur New-Item -type directory -path C:\Bureau-01\02-droit\Client New-Item -type directory -path "C:\Bureau-01\03-devis\Grands comptes" New-Item -type directory -path C:\Bureau-01\03-devis\Particulier
si on rajoute des paramètres ont aura ce bout de script :
$root = "c:\test" $num = "01" $dossier = "bureau-$num" New-Item -type directory -path $root\$dossier\01-Commun New-Item -type directory -path $root\$dossier\02-droit\Fournisseur New-Item -type directory -path $root\$dossier\02-droit\Client New-Item -type directory -path "$root\$dossier\03-devis\Grands comptes" New-Item -type directory -path $root\$dossier\03-devis\Particulier
maintenant si les fichiers liste.txt contient que les numéros de bureau et listing.txt l'arborescence à créé comme ceci :
01-Commun 02-droit\Fournisseur 02-droit\Client 03-devis\Grands comptes 03-devis\Particulier
au final ton script pourrais ressemblé à ça :
$numbureau = "c:\test\liste.txt" $arborescence = "c:\test\listing.txt" $root = "c:\test" Get-Content $numbureau | Foreach-Object { $dossier = "bureau-$_" Get-Content $arborescence | Foreach-Object { New-Item -type directory -path $root\$dossier\$_ }
je pense que les explications sont assez claire pour que tu puisse l'adapté a tes besoins
- Proposé comme réponse 6ratgus vendredi 15 juillet 2016 13:11
-
-