SED et les variables...

Résolu
Bonjour à tous,

J'ai un SED qui est :

/bin/sed -i 22i'$ModLoad imtcp.so\n$InputTCPServerRun '${PORT}'\n*.* @@'${IP}':'${PORT}' /etc/rsyslog.conf;

Sachant que PORT et IP sont en variables plus haut dans le code.

J'ai essayé en mixant les cotes mais rien y fait, j'ai toujours ${IP}${PORT} d'inscrit tels quels dans mon fichier rsyslog.
J'aurai aimé que la ligne m'inscrive les vraies valeurs !

Merci pour votre aide

2 réponses

  1. Contributeur
    Salut,

    Essaye comme ça...

     /bin/sed -i '22i$ModLoad imtcp.so\n$InputTCPServerRun '"${PORT}"'\n*.* @@'"${IP}"':'"${PORT}"'' 


    Nous sommes bien d'accord que
    $ModLoad
    et
    $InputTCPServerRun
    ne sont pas des variables, hein ?

    Zen my nuggets ;-)
    Faites un geste pour l'environnement, fermez vos fenêtres et adoptez un manchot.
    0
    1. Super Merci Zipe, j'avais oublié la cote finale.

      PS : non ce ne sont pas des var

      Juste sur le sed -i 22i'blablabla'
      J'insère en 22eme ligne. Donc j'ai mis 22i en mettant la cote apres et ca fonctionne !

      Merci encore
      0
      1. Contributeur
        De rien, mais à défaut de
        côte de boeuf
        , il est préférable d'user de la
        quote
        qui a davantage la
        cote
        en programmation ;-))
        0