Remplacement d'une chaine de caractères
Coco
-
zipe31 Messages postés 34620 Date d'inscription Statut Contributeur Dernière intervention -
zipe31 Messages postés 34620 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
Je voudrai écrire un script permettant de faire un remplacement d'une chaîne de caractères sur plusieurs lignes,
@tag:clef
public Type var1 = new Type1(val, Type2.val)
Et remplacer ces deux lignes par,
var1 = new Type1(get ("clef", var1.getValue (Type2.val)), Type2.val)
D'avance merci.
Cdlt.
Je voudrai écrire un script permettant de faire un remplacement d'une chaîne de caractères sur plusieurs lignes,
@tag:clef
public Type var1 = new Type1(val, Type2.val)
Et remplacer ces deux lignes par,
var1 = new Type1(get ("clef", var1.getValue (Type2.val)), Type2.val)
D'avance merci.
Cdlt.
1 réponse
-
Salut,
$ cat brol blabla bla bla @tag:clef public Type var1 = new Type1(val, Type2.val) bla bla bla bla $ cat script.sed /^@tag:clef/{ N c var1 = new Type1(get ("clef", var1.getValue (Type2.val)), Type2.val) } $ sed -i.bak -f script.sed brol $ cat brol blabla bla bla var1 = new Type1(get ("clef", var1.getValue (Type2.val)), Type2.val) bla bla bla bla $
Et si tu ne veux pas t'embêter avec un fichier de script (script.sed), tu utilises le mécanisme de substitution :
$ sed '/^@tag:clef/{N;s/.*/var1 = new Type1(get ("clef", var1.getValue (Type2.val)), Type2.val)/}' brol blabla bla bla var1 = new Type1(get ("clef", var1.getValue (Type2.val)), Type2.val) bla bla bla bla