Question
[Résolu] Renommage de fichiers par lots
- jojo
-
Auteur du sujet
- Hors Ligne
- Membre elite
-
Réduire
Plus d'informations
- Messages : 187
- Remerciements reçus 0
il y a 16 ans 5 jours #6382
par jojo
[Résolu] Renommage de fichiers par lots a été créé par jojo
Bonjour,
J'essayes de renommer tous les fichiers *.log dans tous les sous-répertoires du repertoire c:\dossier_de_logs en majuscules:
[code:1]
$source = \"c:\dossier_de_logs\"
$logs = \"*.log\"
get-childitem -path $source -include $logs -recurse | rename-item -newname { $_.name -replace '[a-z]','[A-Z]'}[/code:1]
j'ai essayé plusieurs méthode mais rien
[code:1]
'*[a-z]*','*[A-Z]*'
'*[a-z].*','*[A-Z].*'[/code:1]
merci<br><br>Message édité par: Arnaud, à: 18/03/10 08:32
J'essayes de renommer tous les fichiers *.log dans tous les sous-répertoires du repertoire c:\dossier_de_logs en majuscules:
[code:1]
$source = \"c:\dossier_de_logs\"
$logs = \"*.log\"
get-childitem -path $source -include $logs -recurse | rename-item -newname { $_.name -replace '[a-z]','[A-Z]'}[/code:1]
j'ai essayé plusieurs méthode mais rien
[code:1]
'*[a-z]*','*[A-Z]*'
'*[a-z].*','*[A-Z].*'[/code:1]
merci<br><br>Message édité par: Arnaud, à: 18/03/10 08:32
Connexion ou Créer un compte pour participer à la conversation.
- Laurent Dardenne
- Hors Ligne
- Modérateur
-
Réduire
Plus d'informations
- Messages : 6311
- Remerciements reçus 68
il y a 16 ans 5 jours #6383
par Laurent Dardenne
Tutoriels PowerShell
Réponse de Laurent Dardenne sur le sujet Re:renommage de fichier en majuscule
Salut,
avec une regex ce n'est pas la bonne approche.
Ici seul le premier paramètre est une regex le second est une chaîne de remplacement.
une solution :
[code:1]
$source = \"c:\temp\"
$logs = \"t*.txt\"
get-childitem -path $source -include $logs -recurse |
rename-item -newname { $_.name.ToUpper() } -whatif
[/code:1]
Avec une regex il faut je pense utiliser une capture :
[code:1]
\"test majuscule fichier\" -replace '([a-z]{1})','$1'|Select @{n=\"New\";e={$_.toupper()}}
[/code:1]
Mais je n'ai pas trouvé de moyen de placer du code dans le second paramètre de la regex, il semble qu'il faille utiliser une instance de la classe MatchEvaluator .<br><br>Message édité par: Laurent Dardenne, à: 16/03/10 21:08
avec une regex ce n'est pas la bonne approche.
Ici seul le premier paramètre est une regex le second est une chaîne de remplacement.
une solution :
[code:1]
$source = \"c:\temp\"
$logs = \"t*.txt\"
get-childitem -path $source -include $logs -recurse |
rename-item -newname { $_.name.ToUpper() } -whatif
[/code:1]
Avec une regex il faut je pense utiliser une capture :
[code:1]
\"test majuscule fichier\" -replace '([a-z]{1})','$1'|Select @{n=\"New\";e={$_.toupper()}}
[/code:1]
Mais je n'ai pas trouvé de moyen de placer du code dans le second paramètre de la regex, il semble qu'il faille utiliser une instance de la classe MatchEvaluator .<br><br>Message édité par: Laurent Dardenne, à: 16/03/10 21:08
Tutoriels PowerShell
Connexion ou Créer un compte pour participer à la conversation.
- jojo
-
Auteur du sujet
- Hors Ligne
- Membre elite
-
Réduire
Plus d'informations
- Messages : 187
- Remerciements reçus 0
il y a 16 ans 4 jours #6394
par jojo
Réponse de jojo sur le sujet Re:renommage de fichier en majuscule
et ça marche !! merci Laurent
)
dans mes premiers essaies j'avais fait :
[code:1]... | rename-item -newname { $_.toupper() }[/code:1]
j'avais pas saisi la possibilité de chaîner les propriétés et les méthode comme vous avez fait:
[code:1]... | rename-item -newname { $_.name.toupper() }[/code:1]
une autre question: vous pouvez m'expliquer la notion de \"capture\" j'ai beau chercher mais j'ai pas trouver..
dans mes premiers essaies j'avais fait :
[code:1]... | rename-item -newname { $_.toupper() }[/code:1]
j'avais pas saisi la possibilité de chaîner les propriétés et les méthode comme vous avez fait:
[code:1]... | rename-item -newname { $_.name.toupper() }[/code:1]
une autre question: vous pouvez m'expliquer la notion de \"capture\" j'ai beau chercher mais j'ai pas trouver..
Connexion ou Créer un compte pour participer à la conversation.
- Arnaud Petitjean
-
- Hors Ligne
- Modérateur
-
il y a 16 ans 3 jours #6395
par Arnaud Petitjean
MVP PowerShell et créateur de ce magnifique forum
Auteur de 6 livres PowerShell aux éditions ENI
Fondateur de la société Start-Scripting
Besoin d'une formation PowerShell ?
Réponse de Arnaud Petitjean sur le sujet Re:renommage de fichier en majuscule
Salut !
Pour ce qui est de discuter des captures, merci d'ouvrir un nouveau fil de discussion.
Comme ça, ce sera plus facile pour tout le monde de suivre la conversation.
Arnaud
Pour ce qui est de discuter des captures, merci d'ouvrir un nouveau fil de discussion.
Comme ça, ce sera plus facile pour tout le monde de suivre la conversation.
Arnaud
MVP PowerShell et créateur de ce magnifique forum
Auteur de 6 livres PowerShell aux éditions ENI
Fondateur de la société Start-Scripting
Besoin d'une formation PowerShell ?
Connexion ou Créer un compte pour participer à la conversation.
Temps de génération de la page : 0.045 secondes
- Vous êtes ici :
-
Accueil
-
forum
-
PowerShell
-
Entraide pour les débutants
- [Résolu] Renommage de fichiers par lots