Question
Récupérer nom fichier
- NicolasBdn
-
- Hors Ligne
- Membre senior
-
il y a 10 ans 7 mois #20585
par NicolasBdn
Réponse de NicolasBdn sur le sujet Re:Récupérer nom fichier
Car ton objet $fichier contient l'ensemble des fichiers .pdf de ton dossier c:\wamp\www\.
La condition if ne permet pas de faire de filtre sur tes objets.
Par ailleurs, tu risques de rencontrer pas mal d'erreur lors de l'execution de ton script.
Tu renommes tout les fichiers transférer du même nom.
Or il est impossible d'avoir 2 fichiers du même nom dans un même dossier.<br><br>Message édité par: NicolasB, à: 5/08/15 14:53
La condition if ne permet pas de faire de filtre sur tes objets.
Par ailleurs, tu risques de rencontrer pas mal d'erreur lors de l'execution de ton script.
Tu renommes tout les fichiers transférer du même nom.
Or il est impossible d'avoir 2 fichiers du même nom dans un même dossier.<br><br>Message édité par: NicolasB, à: 5/08/15 14:53
Connexion ou Créer un compte pour participer à la conversation.
- Vasseur
- Auteur du sujet
- Hors Ligne
- Nouveau membre
-
Réduire
Plus d'informations
- Messages : 13
- Remerciements reçus 0
il y a 10 ans 7 mois #20586
par Vasseur
Réponse de Vasseur sur le sujet Re:Récupérer nom fichier
Justement, comment puis-je faire pour prendre un seul fichier à la fois en prennant en compte qu'une partie du nom du fichier ?
Connexion ou Créer un compte pour participer à la conversation.
- Vasseur
- Auteur du sujet
- Hors Ligne
- Nouveau membre
-
Réduire
Plus d'informations
- Messages : 13
- Remerciements reçus 0
il y a 10 ans 7 mois #20587
par Vasseur
Réponse de Vasseur sur le sujet Re:Récupérer nom fichier
J'ai réussi à contourner le problème.
Seulement, comment puis-je faire pour supprimer un fichier dans un dossier destination ?
Car si un fichier est déplacé dans un dossier où il existe déjà, il ne pourra pas être renommé...
Seulement, comment puis-je faire pour supprimer un fichier dans un dossier destination ?
Car si un fichier est déplacé dans un dossier où il existe déjà, il ne pourra pas être renommé...
Connexion ou Créer un compte pour participer à la conversation.
- Vasseur
- Auteur du sujet
- Hors Ligne
- Nouveau membre
-
Réduire
Plus d'informations
- Messages : 13
- Remerciements reçus 0
il y a 10 ans 7 mois #20588
par Vasseur
Réponse de Vasseur sur le sujet Re:Récupérer nom fichier
[code:1]$fichier = Get-Childitem c:\wamp\www\*artois*.pdf | Sort-Object -Property CreationTime | Select-Object -Last 1000000 $fichier
Move-Item -Path $fichier -Destination \"\\192.168.35.155\nasbiopath\Arnaud\test\"
Rename-Item -Path \\192.168.35.155\nasbiopath\Arnaud\test\*.pdf -NewName \"planning_bio_artois.pdf\"
$fichier2 = Get-Childitem c:\wamp\www\*audomarois*.pdf | Sort-Object -Property CreationTime | Select-Object -Last 1000000 $fichier2
Move-Item -Path $fichier2 -Destination \"\\192.168.35.155\nasbiopath\Arnaud\test\audomarois\"
Rename-Item -Path \\192.168.35.155\nasbiopath\Arnaud\test\audomarois\*.pdf -NewName \"planning_bio_audomarois.pdf\"
$fichier3 = Get-Childitem c:\wamp\www\*boulonnais*.pdf | Sort-Object -Property CreationTime | Select-Object -Last 1000000 $fichier3
Move-Item -Path $fichier3 -Destination \"\\192.168.35.155\nasbiopath\Arnaud\test\boulonnais\"
Rename-Item -Path \\192.168.35.155\nasbiopath\Arnaud\test\boulonnais\*.pdf -NewName \"planning_bio_boulonnais.pdf\"
$fichier4 = Get-Childitem c:\wamp\www\*dunkerquois*.pdf | Sort-Object -Property CreationTime | Select-Object -Last 1000000 $fichier4
Move-Item -Path $fichier4 -Destination \"\\192.168.35.155\nasbiopath\Arnaud\test\dunkerquois\"
Rename-Item -Path \\192.168.35.155\nasbiopath\Arnaud\test\dunkerquois\*.pdf -NewName \"planning_bio_dunkerquois.pdf\"
[/code:1]
Move-Item -Path $fichier -Destination \"\\192.168.35.155\nasbiopath\Arnaud\test\"
Rename-Item -Path \\192.168.35.155\nasbiopath\Arnaud\test\*.pdf -NewName \"planning_bio_artois.pdf\"
$fichier2 = Get-Childitem c:\wamp\www\*audomarois*.pdf | Sort-Object -Property CreationTime | Select-Object -Last 1000000 $fichier2
Move-Item -Path $fichier2 -Destination \"\\192.168.35.155\nasbiopath\Arnaud\test\audomarois\"
Rename-Item -Path \\192.168.35.155\nasbiopath\Arnaud\test\audomarois\*.pdf -NewName \"planning_bio_audomarois.pdf\"
$fichier3 = Get-Childitem c:\wamp\www\*boulonnais*.pdf | Sort-Object -Property CreationTime | Select-Object -Last 1000000 $fichier3
Move-Item -Path $fichier3 -Destination \"\\192.168.35.155\nasbiopath\Arnaud\test\boulonnais\"
Rename-Item -Path \\192.168.35.155\nasbiopath\Arnaud\test\boulonnais\*.pdf -NewName \"planning_bio_boulonnais.pdf\"
$fichier4 = Get-Childitem c:\wamp\www\*dunkerquois*.pdf | Sort-Object -Property CreationTime | Select-Object -Last 1000000 $fichier4
Move-Item -Path $fichier4 -Destination \"\\192.168.35.155\nasbiopath\Arnaud\test\dunkerquois\"
Rename-Item -Path \\192.168.35.155\nasbiopath\Arnaud\test\dunkerquois\*.pdf -NewName \"planning_bio_dunkerquois.pdf\"
[/code:1]
Connexion ou Créer un compte pour participer à la conversation.
- NicolasBdn
-
- Hors Ligne
- Membre senior
-
il y a 10 ans 7 mois #20589
par NicolasBdn
Réponse de NicolasBdn sur le sujet Re:Récupérer nom fichier
Voici ce que j'ai fais:
[code:1]$fichiers = Get-Childitem c:\wamp\www\*.pdf
Foreach ( $fic in $fichiers){
Switch -Wildcard ($fic.Name){
\"*artois*\"{
Move-Item -Path $fic.FullName -Destination \"\\192.168.35.155\nasbiopath\Arnaud\test\planning_bio_artois.pdf\"
}
\"*audomarois*\"{
Move-Item -Path $fic.FullName -Destination \"\\192.168.35.155\nasbiopath\Arnaud\test\audomarois\planning_bio_audomarois.pdf\"
}
\"*boulonnais*\"{
Move-Item -Path $fic.FullName -Destination \"\\192.168.35.155\nasbiopath\Arnaud\test\boulonnais\planning_bio_boulonnais.pdf\"
}
\"*dunkerquois*\"{
Move-Item -Path $fic.FullName -Destination \"\\192.168.35.155\nasbiopath\Arnaud\test\dunkerquois\planning_bio_dunkerquois.pdf\"
}
}
}
[/code:1]
Le foreach parse l'ensemble des éléments de l'objet $fichiers. En l'occurrence, tes fichiers pdf.
Ensuite, Le switch permet de remplacer l'ensemble de tes If, le paramètre wildcare est identique au -like du if.
Toutefois, comma je l'ai dis plus haut. Si tes fichiers sont plusieurs avec l'occurrence des switchs, alors ils seront écrasé.
[code:1]$fichiers = Get-Childitem c:\wamp\www\*.pdf
Foreach ( $fic in $fichiers){
Switch -Wildcard ($fic.Name){
\"*artois*\"{
Move-Item -Path $fic.FullName -Destination \"\\192.168.35.155\nasbiopath\Arnaud\test\planning_bio_artois.pdf\"
}
\"*audomarois*\"{
Move-Item -Path $fic.FullName -Destination \"\\192.168.35.155\nasbiopath\Arnaud\test\audomarois\planning_bio_audomarois.pdf\"
}
\"*boulonnais*\"{
Move-Item -Path $fic.FullName -Destination \"\\192.168.35.155\nasbiopath\Arnaud\test\boulonnais\planning_bio_boulonnais.pdf\"
}
\"*dunkerquois*\"{
Move-Item -Path $fic.FullName -Destination \"\\192.168.35.155\nasbiopath\Arnaud\test\dunkerquois\planning_bio_dunkerquois.pdf\"
}
}
}
[/code:1]
Le foreach parse l'ensemble des éléments de l'objet $fichiers. En l'occurrence, tes fichiers pdf.
Ensuite, Le switch permet de remplacer l'ensemble de tes If, le paramètre wildcare est identique au -like du if.
Toutefois, comma je l'ai dis plus haut. Si tes fichiers sont plusieurs avec l'occurrence des switchs, alors ils seront écrasé.
Connexion ou Créer un compte pour participer à la conversation.
- Vasseur
- Auteur du sujet
- Hors Ligne
- Nouveau membre
-
Réduire
Plus d'informations
- Messages : 13
- Remerciements reçus 0
il y a 10 ans 7 mois #20591
par Vasseur
Réponse de Vasseur sur le sujet Re:Récupérer nom fichier
J'ai testé le code mais aucun fichier est écrasé...
La console me dit que le fichier existe<br><br>Message édité par: link_inpark, à: 5/08/15 15:15
La console me dit que le fichier existe<br><br>Message édité par: link_inpark, à: 5/08/15 15:15
Connexion ou Créer un compte pour participer à la conversation.
Temps de génération de la page : 0.050 secondes
- Vous êtes ici :
-
Accueil
-
forum
-
PowerShell
-
Entraide pour les débutants
- Récupérer nom fichier