[sed] remplacer une ligne contenant

Fermé
romulus - Modifié par romulus le 4/10/2010 à 14:48
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 - 4 oct. 2010 à 18:53
Bonjour,

Avec sed je souhaite remplacer une ligne contenant un terme connu. Voici
où j'en suis :

sed -i "s/\"parametre1\"=45678/\"parametre1\"=12345/g" {} \; 


Qui en fait remplace
"parametre1"=45678
par
"parametre1"=12345

Mais, la valeur d'origine du paramètre1 (ici 45678) n'est pas toujours
identique. Comment faire pour remplacer la ligne contenant simplement
"parametre1" ?

Merci



A voir également:

1 réponse

jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 897
4 oct. 2010 à 16:01
Salut,

$ cat plop
Qui en fait remplace
"parametre1"=45678
par
"parametre1"=12345

Mais, la valeur d'origine du paramètre1 (ici 45678) n'est pas toujours
identique. Comment faire pour remplacer la ligne contenant simplement
"parametre1" ?

$ sed 's#\("parametre1"=\)[[:digit:]]*#\177777#' plop
Qui en fait remplace
"parametre1"=77777
par
"parametre1"=77777

Mais, la valeur d'origine du paramètre1 (ici 45678) n'est pas toujours
identique. Comment faire pour remplacer la ligne contenant simplement
"parametre1" ?

;-))
0
Bonjour jipicy

mon problème :

$ cat fichier :
"parametre1"= 45.6.78,
0
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 897
4 oct. 2010 à 18:53
sed 's#\("parametre1"= \)[^,]*#\17.7.77#'
0