Les éditeurs de fichiers texte tels que Notepad et Notepad ++ sontutilisé pour créer un grand nombre de types de fichiers différents, tels que les sous-titres, les fichiers journaux, les fichiers de traitement par lots, les scripts PowerShell, etc. Lorsqu'un éditeur de fichier texte peut créer ces fichiers, il peut également les éditer. Si vous avez beaucoup de fichiers texte, ceux qui portent l'extension TXT et vous devez remplacer un mot, ou plusieurs mots, vous pouvez le faire avec un script PowerShell. Le script fait en sorte que vous ne devez pas ouvrir individuellement chaque fichier et ensuite remplacer le mot. Vous pouvez utiliser ce même script pour d'autres types de fichiers pouvant être créés avec un éditeur de fichier texte. Voici comment remplacer un mot dans plusieurs fichiers texte.
Remplacer Word dans les fichiers texte
Tout d’abord, vous devez placer tous vos fichiers texte dans le même dossier. Le script n’examinera qu’un seul répertoire lorsqu’il sera exécuté et non pas l’ensemble du système. C’est pourquoi vous avez besoin de tous les fichiers au même endroit.
Ouvrez un nouveau fichier Bloc-notes et collez-y les éléments suivants.
Get-ChildItem "Path-to-files*.txt" -Recurse | ForEach { (Get-Content $_ | ForEach { $_ -replace "Original-Word", "New-Word" }) | Set-Content $_ }
Vous devez éditer le script ci-dessus. Commencez par éditer la partie "Chemin d'accès aux fichiers" avec le chemin d'accès réel au dossier contenant tous les fichiers texte. Deuxièmement, remplacez le mot «Original-Word» par le mot que vous souhaitez remplacer. Enfin, remplacez le ‘New-Word’ par le mot que vous souhaitez remplacer par l’ancien. Par exemple, j’ai quelques fichiers texte qui contiennent tous le mot «Poste». Je veux remplacer le mot Poste par Article. C’est à quoi ressemblera le script une fois que je l’aurai modifié pour correspondre à mon scénario.
Get-ChildItem "C:UsersfatiwDesktopnotepad-files*.txt" -Recurse | ForEach { (Get-Content $_ | ForEach { $_ -replace "Post", "Article" }) | Set-Content $_ }
Une fois le script modifié, enregistrez-le avec leExtension de fichier ps1. Assurez-vous de changer le type de fichier de fichiers texte à tous les fichiers de la boîte de dialogue Enregistrer sous du Bloc-notes. Exécutez le script et il exécutera la fonction de remplacement.

Si vous souhaitez utiliser ce même script pour les fichiers XML ou LOG, modifiez l'extension du fichier dans la première ligne. Par exemple,
Cela deviendra
Get-ChildItem "C:UsersfatiwDesktopnotepad-files*.txt"
Cette;
Get-ChildItem "C:UsersfatiwDesktopnotepad-files*.xml"
Il y a une chose que vous devriez savoir à ce sujetscénario; il ne fait pas correspondre les mots aux mots. Si vous cherchez à remplacer chaque occurrence de «le» par «a», elle remplacera également «le» au début de «ces» et «là». C'est une lacune de ce script. Pour contourner ce problème, vous pouvez utiliser Notepad ++, qui possède une option de mot correspondant.
commentaires