GNU/Linux >> Tutoriels Linux >  >> Linux

Rechercher et remplacer dans les scripts shell

Vous pouvez utiliser sed pour effectuer une recherche/remplacement. Je le fais généralement à partir d'un script shell bash, et je déplace le fichier d'origine contenant les valeurs à remplacer par un nouveau nom, et j'exécute sed en écrivant la sortie dans mon nom de fichier d'origine comme ceci :

#!/bin/bash
mv myfile.txt myfile.txt.in

sed -e 's/PatternToBeReplaced/Replacement/g' myfile.txt.in > myfile.txt.

Si vous ne spécifiez pas de sortie, le remplacement ira à stdout.


sed -i 's/variable/replacement/g' *.conf

Vous pouvez utiliser sed pour cela :

sed -i 's/toreplace/yoursetting/' configfile 

sed est probablement disponible sur tous les systèmes de type Unix. Si vous souhaitez remplacer plusieurs occurrences, vous pouvez ajouter un g à la commande s :

sed -i 's/toreplace/yoursetting/g' configfile 

Soyez prudent car cela peut complètement détruire votre fichier de configuration si vous ne spécifiez pas correctement votre valeur de remplacement. sed prend également en charge les expressions régulières pour la recherche et le remplacement.


Bien sûr, vous pouvez le faire en utilisant sed ou awk. exemple :

sed -i 's/Andrew/James/g' /home/oleksandr/names.txt

Linux
  1. Utilisation de sed pour rechercher et remplacer des fichiers texte sous Linux

  2. Éditeur Vi et Vim :12 exemples puissants de recherche et de remplacement

  3. Utiliser grep et sed pour rechercher et remplacer une chaîne

  4. Rechercher et remplacer par sed dans le répertoire et les sous-répertoires

  5. trouver le texte correspondant et remplacer la ligne suivante

Comment utiliser la commande SED pour rechercher et remplacer une chaîne dans des fichiers

Comment rechercher et remplacer du texte, un mot ou une chaîne dans un fichier

Comment rechercher et remplacer du texte dans Vim

Shell Scripting Part4 - Entrée, sortie et redirection

Tutoriel Unix Sed :Rechercher et remplacer du texte dans un fichier à l'aide de RegEx

Comment utiliser Sed pour rechercher et remplacer une chaîne dans un fichier