Remplacer une ligne dans un fichier avec SED

Résolu/Fermé
Wilfou
Messages postés
101
Date d'inscription
dimanche 4 avril 2010
Statut
Membre
Dernière intervention
3 janvier 2014
- 23 août 2013 à 15:51
Wilfou
Messages postés
101
Date d'inscription
dimanche 4 avril 2010
Statut
Membre
Dernière intervention
3 janvier 2014
- 26 août 2013 à 10:28
Bonjour,

En parcourant le web, j'ai trouver qu'on pouvait modifier le contenu d'un fichier à l'aide de SED.

Dans mon cas, j'aimerais d'abord rechercher une ligne spécifique à l'aide du début de la ligne ("$variable_origine=" par exemple) et la remplacer par une autre ligne ("$variable_remplace=contenu").

Pouvez-vous m'aider à créer cette ligne que je pourrais ajouter dans mon petit script ? je m'y retrouve plus avec les ^, les \, les /, etc. (une explication ou même un lien vers un tuto que vous trouvez assez simple à comprendre me convient =D)

Merci

4 réponses

zipe31
Messages postés
36324
Date d'inscription
dimanche 7 novembre 2010
Statut
Contributeur
Dernière intervention
27 janvier 2021
6 588
23 août 2013 à 16:23
$ cat plop 
blablabla
blablabla
$une_variable=un_contenu
blablabla
blablabla

$ sed -i.bak 's/^\$une_variable=.*/\$une_autre_variable=un_autre_contenu/' plop

$ cat plop 
blablabla
blablabla
$une_autre_variable=un_autre_contenu
blablabla
blablabla

3