Question
Déplacer des fichiers dans des dossiers du même nom
- Cédric
- Auteur du sujet
- Hors Ligne
- Nouveau membre
-
Réduire
Plus d'informations
- Messages : 12
- Remerciements reçus 1
il y a 11 mois 3 semaines - il y a 11 mois 3 semaines #32715
par Cédric
Déplacer des fichiers dans des dossiers du même nom a été créé par Cédric
Bonjour à tous,
Afin de faciliter mon travail, et étant débutant en Powershell, je cherche la possibilité de déplacer des fichiers dans un dossier qui porte le même numéro.
Exemple:
dans le C:\Users\user\Desktop\Factures
Fichiers : Mr tatati numéro 555555555.xlsx
Fichiers : Mr numéro 4545454545 tata 65656565 .xlsx
dans
Dossier : Mr tatati numéro 555555555
Dossier : Mr numéro 4545454545 tata 65656565 .xlsx
il faudrait trouver une concordance nom fichiers / noms de dossiers et les déplacer dans le bon dossier.
j'ai trouvé ça mais il déplace uniquement le fichier nommé "gg" fixe dans le dossier fixe "gg"
Move-Item -Path "C:\Users\user\Desktop\Factures\*gg*" -Destination "C:\Users\user\Desktop\Factures\gg\"
je ne sais pas si ma question est bien compréhensible ou même si il existe une possibilité....
merci d'avance pour votre aide.
Afin de faciliter mon travail, et étant débutant en Powershell, je cherche la possibilité de déplacer des fichiers dans un dossier qui porte le même numéro.
Exemple:
dans le C:\Users\user\Desktop\Factures
Fichiers : Mr tatati numéro 555555555.xlsx
Fichiers : Mr numéro 4545454545 tata 65656565 .xlsx
dans
Dossier : Mr tatati numéro 555555555
Dossier : Mr numéro 4545454545 tata 65656565 .xlsx
il faudrait trouver une concordance nom fichiers / noms de dossiers et les déplacer dans le bon dossier.
j'ai trouvé ça mais il déplace uniquement le fichier nommé "gg" fixe dans le dossier fixe "gg"
Move-Item -Path "C:\Users\user\Desktop\Factures\*gg*" -Destination "C:\Users\user\Desktop\Factures\gg\"
je ne sais pas si ma question est bien compréhensible ou même si il existe une possibilité....
merci d'avance pour votre aide.
Dernière édition: il y a 11 mois 3 semaines par Cédric.
Connexion ou Créer un compte pour participer à la conversation.
- Laurent Dardenne
- Hors Ligne
- Modérateur
-
Réduire
Plus d'informations
- Messages : 6294
- Remerciements reçus 67
il y a 11 mois 3 semaines #32717
par Laurent Dardenne
Tutoriels PowerShell
Réponse de Laurent Dardenne sur le sujet Déplacer des fichiers dans des dossiers du même nom
Salut,
la propriété BaseName d'un fichier permet de récupérer la partie nom uniquement sans l'extension.
Un appel à Test-Path avant de déplacer permet savoir s'il existe un répertorie du même nom, qq chose comme ceci :
la propriété BaseName d'un fichier permet de récupérer la partie nom uniquement sans l'extension.
Un appel à Test-Path avant de déplacer permet savoir s'il existe un répertorie du même nom, qq chose comme ceci :
$files=Dir factures
$Name=Files[0].BaseName
if (Test-Path "Destination\$Name") {Move-item -Path "facture\files[0]" -Des "destination\$Name\"
else { ' move impossible'}
Tutoriels PowerShell
Connexion ou Créer un compte pour participer à la conversation.
- Cédric
- Auteur du sujet
- Hors Ligne
- Nouveau membre
-
Réduire
Plus d'informations
- Messages : 12
- Remerciements reçus 1
il y a 11 mois 3 semaines - il y a 11 mois 3 semaines #32722
par Cédric
Réponse de Cédric sur le sujet Déplacer des fichiers dans des dossiers du même nom
Bonsoir,merci beaucoup pour ta réponse, je planche dessus toute la soirée
mais au moins je comprends plus ou moins.
j'ai deux petits soucis;
avec le 0 il ne prends que le premier fichier et je me suis aperçu en changeant il prends le deuxième fichier etc...
Y a-t-il un moyen qu'il prenne tous les fichiers ?
mon deuxième soucis;
j'ai des fichiers qui ont un nom mais à la fin ils ont plusieurs espace avant l'extension.
exempl: Jean du jardin .xlsm , du coup il ne reconnait pas le dossier qui lui n'as pas d'espaces...
Y a-t-il une solution ?
mais au moins je comprends plus ou moins.
j'ai deux petits soucis;
avec le 0 il ne prends que le premier fichier et je me suis aperçu en changeant il prends le deuxième fichier etc...
Y a-t-il un moyen qu'il prenne tous les fichiers ?
mon deuxième soucis;
j'ai des fichiers qui ont un nom mais à la fin ils ont plusieurs espace avant l'extension.
exempl: Jean du jardin .xlsm , du coup il ne reconnait pas le dossier qui lui n'as pas d'espaces...
Y a-t-il une solution ?
$Racine= "C:\Users\user\Desktop\Factures\"
$files=Dir $Racine
$Nom=($Files[0].BaseName)
$EXT=".xlsm"
if (Test-Path "$Racine$Nom") {Move-item -Path "$Racine$Nom$EXT" -Des "$Racine$Nom\"}
else { ' move impossible'}
Dernière édition: il y a 11 mois 3 semaines par Cédric.
Connexion ou Créer un compte pour participer à la conversation.
- Cédric
- Auteur du sujet
- Hors Ligne
- Nouveau membre
-
Réduire
Plus d'informations
- Messages : 12
- Remerciements reçus 1
il y a 11 mois 3 semaines - il y a 11 mois 3 semaines #32723
par Cédric
Réponse de Cédric sur le sujet Déplacer des fichiers dans des dossiers du même nom
Re; j'ai trouvé pour les espaces
$Racine= "C:\Users\user\Desktop\Factures\"
################################################################################################
#va supprimer les espaces en trop
$Source = Dir "$Racine"
$Source| rename-item -NewName {$_.name -replace '(^\s+|\s+$)','' -replace '\s+',' '}
################################################################################################
$files=Dir $Racine
$Nom=($Files[2].BaseName)
Write-host "$Nom"
$EXT=" .xlsm"
if (Test-Path "$Racine$Nom") {Move-item -Path "$Racine$Nom$EXT" -Des "$Racine$Nom\"}
else { ' move impossible'}
Dernière édition: il y a 11 mois 3 semaines par Cédric.
Connexion ou Créer un compte pour participer à la conversation.
- Laurent Dardenne
- Hors Ligne
- Modérateur
-
Réduire
Plus d'informations
- Messages : 6294
- Remerciements reçus 67
il y a 11 mois 3 semaines - il y a 11 mois 3 semaines #32724
par Laurent Dardenne
Tutoriels PowerShell
Réponse de Laurent Dardenne sur le sujet Déplacer des fichiers dans des dossiers du même nom
Salut,
>>avec le 0 il ne prends que le premier fichier
il faut boucler sur la collection de fichiers avec foreach ($File in $Source)
>>avec le 0 il ne prends que le premier fichier
il faut boucler sur la collection de fichiers avec foreach ($File in $Source)
Tutoriels PowerShell
Dernière édition: il y a 11 mois 3 semaines par Laurent Dardenne.
Connexion ou Créer un compte pour participer à la conversation.
- Cédric
- Auteur du sujet
- Hors Ligne
- Nouveau membre
-
Réduire
Plus d'informations
- Messages : 12
- Remerciements reçus 1
il y a 11 mois 3 semaines #32727
par Cédric
Réponse de Cédric sur le sujet Déplacer des fichiers dans des dossiers du même nom
Merci infiniment pour ton aide, c'est parfait Trop content !
ci-dessous le code pour ceux qui veulent.
Bonne journée
ci-dessous le code pour ceux qui veulent.
Bonne journée
$Racine= "C:\Users\user\Desktop\Factures\"
################################################################################################
#va supprimer les espaces en trop
$Source = Dir "$Racine"
$Source| rename-item -NewName {$_.name -replace '(^\s+|\s+$)','' -replace '\s+',' '}
################################################################################################
$files=Dir $Racine
foreach ($Files in $Source){
$Nom=($Files[0].BaseName)
Write-host "$Nom"
$EXT=" .xlsm"
if (Test-Path "$Racine$Nom") {Move-item -Path "$Racine$Nom$EXT" -Des "$Racine$Nom\"}
else { ' move impossible'}
}
Connexion ou Créer un compte pour participer à la conversation.
Temps de génération de la page : 0.054 secondes
- Vous êtes ici :
-
Accueil
-
forum
-
PowerShell
-
Entraide pour les débutants
- Déplacer des fichiers dans des dossiers du même nom