Question
lecture fichier et creation de dossier
- stas
-
Auteur du sujet
- Hors Ligne
- Nouveau membre
-
Réduire
Plus d'informations
- Messages : 16
- Remerciements reçus 0
il y a 13 ans 3 semaines #14717
par stas
lecture fichier et creation de dossier a été créé par stas
Bonjour,
Je suis novices en powershell et voudrai me familiariser assez vite.
donc je me suis lancé dans des pt script de base.
mais la je bloque!!!
je voudrai lire une arborescence d'un disque (dossier uniquement)
et utiliser cette lecture pour recréer cette même arborescence sur un autre disque.
voici mon pt script mais un pt problème pour la création des répertoires.
Get-ChildItem -Path \"\\server\d$\" -recurse | Where-Object { $_.PSIsContainer } | Select-Object Name,Fullname >> c:\temp\essai.txt
$path = Get-Content -Path c:\temp\essai.txt -Encoding default -Force
Foreach ($directory in $path)
{New-Item -ItemType directory -Path \"\\server\e$\" -Name \"$directory\"}
Merci de votre aide et explication
ps: les \\\\\\\ n'apparaisse pas?<br><br>Message édité par: fabgr, à: 26/04/13 09:45
Je suis novices en powershell et voudrai me familiariser assez vite.
donc je me suis lancé dans des pt script de base.
mais la je bloque!!!
je voudrai lire une arborescence d'un disque (dossier uniquement)
et utiliser cette lecture pour recréer cette même arborescence sur un autre disque.
voici mon pt script mais un pt problème pour la création des répertoires.
Get-ChildItem -Path \"\\server\d$\" -recurse | Where-Object { $_.PSIsContainer } | Select-Object Name,Fullname >> c:\temp\essai.txt
$path = Get-Content -Path c:\temp\essai.txt -Encoding default -Force
Foreach ($directory in $path)
{New-Item -ItemType directory -Path \"\\server\e$\" -Name \"$directory\"}
Merci de votre aide et explication
ps: les \\\\\\\ n'apparaisse pas?<br><br>Message édité par: fabgr, à: 26/04/13 09:45
Connexion ou Créer un compte pour participer à la conversation.
- SiSMik
- Hors Ligne
- Membre platinium
-
Réduire
Plus d'informations
- Messages : 492
- Remerciements reçus 0
il y a 13 ans 3 semaines #14720
par SiSMik
Réponse de SiSMik sur le sujet Re:lecture fichier et creation de dossier
Bonjour,
Les \ ne sont visisbles que si tu utilises la balise code pour mettre du code (normal quoi ^^)
Ensuite, pourquoi passer par un fichier texte pour evoyer la liste de fichiers à créer ?
[code:1]
Get-ChildItem -Path '\\server\d$' -recurse | Where-Object { $_.PSIsContainer } | Foreach {
New-Item -Type Directory -Path '\\server\e$' -Name $_.Name
}
[/code:1]
Je te conseil de regarder cet exemple qui devrait marcher pour bien comprendre l'intérêt de powershell et des langages objet.
Si tu as des questions
Les \ ne sont visisbles que si tu utilises la balise code pour mettre du code (normal quoi ^^)
Ensuite, pourquoi passer par un fichier texte pour evoyer la liste de fichiers à créer ?
[code:1]
Get-ChildItem -Path '\\server\d$' -recurse | Where-Object { $_.PSIsContainer } | Foreach {
New-Item -Type Directory -Path '\\server\e$' -Name $_.Name
}
[/code:1]
Je te conseil de regarder cet exemple qui devrait marcher pour bien comprendre l'intérêt de powershell et des langages objet.
Si tu as des questions
Connexion ou Créer un compte pour participer à la conversation.
- stas
-
Auteur du sujet
- Hors Ligne
- Nouveau membre
-
Réduire
Plus d'informations
- Messages : 16
- Remerciements reçus 0
il y a 13 ans 3 semaines #14721
par stas
Réponse de stas sur le sujet Re:lecture fichier et creation de dossier
Merci bcp pour les info 
je viens de tester le script mais pt prob.
comment fais-tu si tu as des sous-répertoires à lire et donc des sous répertoires et a recrée.
exemple: d$\\test\\1 - d$\t\est\\2 -.....
le script me donne : e$\\test - e$\\1 - e$\\2 - ...<br><br>Message édité par: fabgr, à: 26/04/13 11:00
je viens de tester le script mais pt prob.
comment fais-tu si tu as des sous-répertoires à lire et donc des sous répertoires et a recrée.
exemple: d$\\test\\1 - d$\t\est\\2 -.....
le script me donne : e$\\test - e$\\1 - e$\\2 - ...<br><br>Message édité par: fabgr, à: 26/04/13 11:00
Connexion ou Créer un compte pour participer à la conversation.
- stas
-
Auteur du sujet
- Hors Ligne
- Nouveau membre
-
Réduire
Plus d'informations
- Messages : 16
- Remerciements reçus 0
il y a 13 ans 3 semaines #14731
par stas
Réponse de stas sur le sujet Re:lecture fichier et creation de dossier
Hello a tous
personne ne sais m'aidez car la vraiment je bloque!!!
lecture du drive d$ :
creation dans l'autre drive :
donc comme on peux remarqué ce n'est pas identique
personne ne sais m'aidez car la vraiment je bloque!!!
lecture du drive d$ :
-
d$\test\1 - d$\test\2 - ...
creation dans l'autre drive :
-
e$\test - e$\1 - e$\2 - ...
donc comme on peux remarqué ce n'est pas identique
Connexion ou Créer un compte pour participer à la conversation.
- Matthew BETTON
- Hors Ligne
- Membre platinium
-
Réduire
Plus d'informations
- Messages : 968
- Remerciements reçus 0
il y a 13 ans 3 semaines #14732
par Matthew BETTON
Réponse de Matthew BETTON sur le sujet Re:lecture fichier et creation de dossier
Bonjour,
Comme le proposait benduru, utilises dans ce Forum les balises [ c o d e ] et [/ c o d e ] (sans les espaces!) afin que les 'slashs' soient visibles... Ca sera plus mieux pour ceux qui chercherons à t'aider
Pour remplacer le 'd$' par un 'e$' (exemple) :
[code:1]\"\\server\d$\toto\tutu\" -replace \"\\d\$\", \"\e$\"[/code:1]
A tester :
[code:1]Get-ChildItem -Path '\\server\d$' -recurse | Where-Object { $_.PSIsContainer } | Foreach {
New-Item -Type Directory -Path ($_.FullName -replace \"\\d\$\", \"\e$\"«») -Name $_.Name
}[/code:1]
Le '-recurse' sur 'Get-ChildItem' va passer dans toutes les sous arboressences (mode recursif). Le filtre 'Where-Object { $_.PSIsContainer }' va permettre de ne récupérer que les répertoires. Chaque répertoire (arboressence) récupéré va être ainsi transmis via le pipeline à 'New-Item', qui va la recréer sur le nouveau volume.
@ +
Matthew BETTON
Comme le proposait benduru, utilises dans ce Forum les balises [ c o d e ] et [/ c o d e ] (sans les espaces!) afin que les 'slashs' soient visibles... Ca sera plus mieux pour ceux qui chercherons à t'aider
Pour remplacer le 'd$' par un 'e$' (exemple) :
[code:1]\"\\server\d$\toto\tutu\" -replace \"\\d\$\", \"\e$\"[/code:1]
A tester :
[code:1]Get-ChildItem -Path '\\server\d$' -recurse | Where-Object { $_.PSIsContainer } | Foreach {
New-Item -Type Directory -Path ($_.FullName -replace \"\\d\$\", \"\e$\"«») -Name $_.Name
}[/code:1]
Le '-recurse' sur 'Get-ChildItem' va passer dans toutes les sous arboressences (mode recursif). Le filtre 'Where-Object { $_.PSIsContainer }' va permettre de ne récupérer que les répertoires. Chaque répertoire (arboressence) récupéré va être ainsi transmis via le pipeline à 'New-Item', qui va la recréer sur le nouveau volume.
@ +
Matthew BETTON
Connexion ou Créer un compte pour participer à la conversation.
- stas
-
Auteur du sujet
- Hors Ligne
- Nouveau membre
-
Réduire
Plus d'informations
- Messages : 16
- Remerciements reçus 0
il y a 13 ans 3 semaines #14735
par stas
Réponse de stas sur le sujet Re:lecture fichier et creation de dossier
Merci
je commence a comprendre
le principe
mais une chose je ne comprend pas pourquoi j'ai des doublons?
j'explique mon résultat après avoir passer le script sur mon pc
[code:1]
sur mon drive d: j'ai d$\public\1
le script lancé j'ai sur mon drive e: => e:\public\1 mais aussi e:\public\public
[/code:1]
c'est comme si j'ai des doublons
Je pense que c'est un problème par rapport au pipe?
Il n'y a pas une manière de formater le pipe? avec rien que une liste des répertoires (j'ai fait un test pour voir ce qui est dans le pipe avec >> et j'ai plusieurs info pas que le directory)
je commence a comprendre
mais une chose je ne comprend pas pourquoi j'ai des doublons?
j'explique mon résultat après avoir passer le script sur mon pc
[code:1]
sur mon drive d: j'ai d$\public\1
le script lancé j'ai sur mon drive e: => e:\public\1 mais aussi e:\public\public
[/code:1]
c'est comme si j'ai des doublons
Je pense que c'est un problème par rapport au pipe?
Il n'y a pas une manière de formater le pipe? avec rien que une liste des répertoires (j'ai fait un test pour voir ce qui est dans le pipe avec >> et j'ai plusieurs info pas que le directory)
Connexion ou Créer un compte pour participer à la conversation.
Temps de génération de la page : 0.044 secondes
- Vous êtes ici :
-
Accueil
-
forum
-
PowerShell
-
Entraide pour les débutants
- lecture fichier et creation de dossier