Sed: avec variable et quotes

Résolu
tlep Messages postés 597 Statut Membre -  
tlep Messages postés 597 Statut Membre -
Bonjour,

J'ai un fichier contenant :

aaa
bbb
ccc

Je fais : sed 's/^bbb$//g;/./!d' fichier

J'obtiens bien :
aaa
ccc

En revanche si je fais :
toto="bbb";sed 's/^$toto$//g;/./!d' fichier
ca ne marche pas :
aaa
bbb
ccc
Avec les doubles quotes:
toto="bbb";sed "s/^$toto$//g;/./!d" fichier
-bash: !d": event not found

Comment que se fait-ce ? :-)
Configuration: Windows XP
Firefox 2.0.0.11

3 réponses

  1. lami20j Messages postés 21506 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 571
     
    Salut,

    sinon, comme ça (mais la solution donnée par jipicy est meilleure)
    root@debian:~# cat tlep.txt
    aaa
    bbb
    ccc
    root@debian:~# toto="bbb";sed -e "s/^$toto$//g" -e '/./!d' tlep.txtaaa
    ccc
    root@debian:~#
    1
  2. tlep Messages postés 597 Statut Membre 118
     
    Merci une nouvelle fois :-)
    0