SED et les variables...

Résolu
neuneu -  
zipe31 Messages postés 36402 Date d'inscription   Statut Contributeur Dernière intervention   -
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

zipe31 Messages postés 36402 Date d'inscription   Statut Contributeur Dernière intervention   6 430
 
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
neuneu
 
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
zipe31 Messages postés 36402 Date d'inscription   Statut Contributeur Dernière intervention   6 430
 
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