Je dois remplacer un texte dans un fichier texte par un autre. D'habitude je ferais quelque chose comme
sed -i 's/text/replacement/g' path/to/the/file
Le problème est que les deux text
et replacement
sont des chaînes complexes contenant des tirets, des barres obliques, blackslashes, citations et ainsi de suite. Si j'échappe à tous les caractères nécessaires, text
la chose devient rapidement illisible. D'autre part, je n'ai pas besoin de la puissance des expressions régulières: je dois juste remplacer le texte littéralement.
Existe-t-il un moyen de substituer du texte sans utiliser d'expressions régulières avec une commande bash?
Il serait plutôt trivial d’écrire un script qui le fasse, mais j’imagine qu’il devrait déjà exister quelque chose.
bash
toujours été livrés avec Microsoft Word? ;) Non je rigole. Cependant, l’opérateur peut souhaiter effectuer cette opération sur une machine distante ou pour un lot de fichiers.
sed
, ce qui est probablement un effort futile compte tenu de tous les commutateurs et les différences de plate - forme.
find and replace all