Comment remplacer un mot dans plusieurs fichiers texte sous Windows 10

Les éditeurs de fichiers texte tels que Notepad et Notepad ++ sont utilisés pour créer de nombreux types de fichiers tels que des sous-titres, des fichiers journaux, des fichiers de commandes, des scripts PowerShell, etc. Lorsqu’un éditeur de fichiers texte peut créer ces fichiers, il peut également les éditer. Si vous avez beaucoup de fichiers texte, ceux qui ont l’extension de fichier TXT et que vous devez remplacer un mot ou plusieurs mots, vous pouvez le faire avec un script PowerShell. Le script fait en sorte que vous n’ayez pas à ouvrir individuellement chaque fichier, puis à remplacer le mot. Vous pouvez utiliser ce même script pour d’autres types de fichiers qui peuvent être créés avec un éditeur de fichiers texte. Voici comment remplacer un mot dans plusieurs fichiers texte.

  Comment changer la couleur de la grille de transparence Photoshop

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 lors de son exécution et non l’ensemble de votre 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 ce qui suit.

Get-ChildItem 'Path-to-files*.txt' -Recurse | ForEach {
(Get-Content $_ | ForEach { $_ -replace 'Original-Word', 'New-Word' }) |
Set-Content $_
}

Vous devez modifier le script ci-dessus. Tout d’abord, modifiez 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» par le mot que vous souhaitez remplacer. Enfin, remplacez le « Nouveau-mot » par le mot par lequel vous souhaitez remplacer l’ancien. Par exemple, j’ai quelques fichiers texte qui contiennent tous le mot «Publier». Je veux remplacer le mot Post par Article. Voici à quoi ressemblera le script une fois que je l’aurai modifié pour l’adapter à mon scénario.

Get-ChildItem 'C:UsersfatiwDesktopnotepad-files*.txt' -Recurse | ForEach {
(Get-Content $_ | ForEach { $_ -replace 'Post', 'Article' }) |
Set-Content $_
}

Une fois que vous avez modifié le script, enregistrez-le avec l’extension de fichier ps1. Assurez-vous de changer le type de fichier des fichiers texte à tous les fichiers dans la boîte de dialogue Enregistrer sous du Bloc-notes. Exécutez le script et il exécutera la fonction de remplacement.

  Pourquoi ne pouvez-vous pas utiliser un téléviseur comme moniteur?

Si vous souhaitez utiliser ce même script pour les fichiers XML ou LOG, modifiez l’extension de fichier sur 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 devez savoir sur ce script; il ne fait pas correspondre les mots aux mots. Si vous cherchez à remplacer chaque occurrence de «the» par «a», cela remplacera également le «the» au début de «these» et «there». C’est une lacune de ce script. Pour contourner ce problème, vous pouvez utiliser Notepad ++ qui a une option de mot de correspondance.

  Comment enregistrer un Google Doodle hors ligne