Sed avec un .*, puis mise en variable

Résolu
sergio -  
 sergio -
Bonjour,

Je désire faire un remplacement dans une chaine de caractère et mettre le résultat en variable. Voici ce que je tape :
chaine="abcd ef ghij"
a=ef
aa=`echo "$chaine" | sed "s/$a/.*/g"`
echo $aa
abcd . .. ghij (ici c'est le résultat)

et je voudrais obtenir
abcd .* ghij

où corriger ?

A voir également:

2 réponses

zipe31 Messages postés 36402 Date d'inscription   Statut Contributeur Dernière intervention   6 430
 
Salut,

Il faut entourer ta variable avec des doubles quotes ;-\

$ aa=$(echo "$chaine" | sed "s/$a/.*/g")

$ echo $aa
abcd . .. ghij

$ echo "$aa"
abcd .* ghij


1
sergio
 
en effet, ça marche
merci beaucoup
en fait la variable contenait bien ce que je voulais, ce n'était que son affichage qui faisait paraitre le contraire !
merci
0