Lorsque vous gérez un grand nombre de fichiers et de dossiers, il peut arriver que leurs noms contiennent une partie commune que vous souhaitez supprimer ou modifier. Plutôt que de les renommer un par un, vous pouvez utiliser PowerShell pour automatiser cette tâche. Cet article vous explique comment renommer plusieurs fichiers et dossiers simultanément en utilisant PowerShell.
Cas d’utilisation
Prenons un exemple simple : vous avez téléchargé des fichiers dont les noms commencent tous par une chaîne comme [MUSICABILL-DOWNLOADED.COM]. Vous souhaitez supprimer cette partie pour avoir des noms de fichiers plus clairs. Voici comment procéder avec PowerShell, un outil puissant de ligne de commande sous Windows.
Renommer des dossiers
La première étape consiste à renommer les dossiers. Supposons que tous vos dossiers se trouvent dans le répertoire E:\Downloads\torrents\ et que vous souhaitiez supprimer la chaîne [MUSICABILL-DOWNLOADED.COM] de leurs noms. Voici la commande PowerShell pour y parvenir :
Get-ChildItem "E:\Downloads\torrents\" -Directory | Rename-Item -NewName { $_.Name -replace '\[MUSICABILL-DOWNLOADED.COM\]', '' }BashExplication de la commande
Get-ChildItem "E:\Downloads\torrents\" -Directory: Cette commande récupère tous les dossiers situés dans le chemin spécifié.Rename-Item -NewName { $_.Name -replace '\[MUSICABILL-DOWNLOADED.COM\]', '' }: Pour chaque dossier, cette commande supprime la chaîne[MUSICABILL-DOWNLOADED.COM]en la remplaçant par une chaîne vide, ce qui renomme le dossier.
Renommer des fichiers dans plusieurs dossiers
Ensuite, vous pouvez vouloir appliquer le même traitement aux fichiers situés dans différents sous-dossiers de ce répertoire. Pour cela, vous pouvez utiliser une commande PowerShell qui parcourt récursivement tous les fichiers et supprime la partie commune du nom de fichier :
Get-ChildItem -Path "E:\Downloads\torrents\" -Recurse | Where-Object { -not $_.PSIsContainer } | Rename-Item -NewName { $_.Name -replace '\[MUSICABILL-DOWNLOADED.COM\]', '' }BashExplication de la commande
Get-ChildItem -Path "E:\Downloads\torrents\" -Recurse: Cette commande parcourt récursivement tous les sous-dossiers du répertoireE:\Downloads\torrents\.Where-Object { -not $_.PSIsContainer }: Elle filtre les résultats pour ne garder que les fichiers, et non les dossiers.Rename-Item -NewName { $_.Name -replace '\[MUSICABILL-DOWNLOADED.COM\]', '' }: Cette commande renomme chaque fichier en supprimant la chaîne[MUSICABILL-DOWNLOADED.COM].
Pourquoi utiliser PowerShell pour renommer des fichiers ?
Renommer manuellement des centaines de fichiers peut être une tâche fastidieuse et sujette à des erreurs. Avec PowerShell, vous pouvez automatiser cette tâche de manière efficace, rapide et sans risque de faire des erreurs. Une fois la commande lancée, tous vos fichiers et dossiers sont renommés en quelques secondes.
Conclusion
Ces deux commandes PowerShell permettent de renommer facilement et rapidement des fichiers et des dossiers en masse, en supprimant des parties communes de leurs noms. En comprenant comment elles fonctionnent, vous pouvez adapter ces commandes à vos propres besoins, économisant ainsi un temps précieux lors de la gestion de fichiers.

