Sed variable
Résolu
eric0279
Messages postés
3
Statut
Membre
-
eric0279 Messages postés 3 Statut Membre -
eric0279 Messages postés 3 Statut Membre -
Bonjour,
j'ai une variable: WEB="/var/www"
seulement avec sed, il ne modifie pas le fichier après multiples tentatives, soit une erreur de regex soit aucune erreur mais rien dans le fichier...
Ligne d'origine:
J'ai essayé avec des substitutions :, % mais aucun effet... quel est mon erreur vu que ça ne fonctionne pas ?
edit: ce n'est pas très propre mais pour le moment j'efface la ligne et je l'insère:
Cordialement,
j'ai une variable: WEB="/var/www"
seulement avec sed, il ne modifie pas le fichier après multiples tentatives, soit une erreur de regex soit aucune erreur mais rien dans le fichier...
Ligne d'origine:
sed -i "s/#htmldir[[:blank:]]\/var\/cache\/munin\/www/htmldir \/var\/www\/munin/g;" /etc/munin/munin.conf
J'ai essayé avec des substitutions :, % mais aucun effet... quel est mon erreur vu que ça ne fonctionne pas ?
edit: ce n'est pas très propre mais pour le moment j'efface la ligne et je l'insère:
sed -i '9d' /etc/munin/munin.conf && sed -i "9ihtmldir $WEB\/munin" /etc/munin/munin.conf
Cordialement,
A voir également:
- Sed variable
- Vba range avec variable ✓ - Forum VB / VBA
- Range avec une Variable ✓ - Forum VB / VBA
- Variable d'environnement temp ✓ - Forum Microsoft Office
- Variable objet ou variable de bloc with non définie - Forum VB / VBA
- Impossible de créer le fichier de travail. vérifiez la variable d'environnement temp - Forum Microsoft Office
5 réponses
Rien pigé!
Que sont sensés faire ta substitution ou ton filtre en général. Explique cela clairement.
Que sont sensés faire ta substitution ou ton filtre en général. Explique cela clairement.
Je voudrais passer
\/var\/www\/munin/en variable dans cette ligne:
sed -i "s/#htmldir[[:blank:]]\/var\/cache\/munin\/www/htmldir \/var\/www\/munin/g;" /etc/munin/munin.conf
Inspire-toi de ceci peut-être:
Notons l'utilisation des guillemets doubles afin de permettre l'évaluation de ${REP} par le shell.
Gates gave ^W sold you the windows.
GNU gave us the whole house.(Alexandrin)
johand@bata:~/tmp$ cat brol.txt
/plop/var/cache/apt
/plop/var/cache/apt/pkgcache.bin
/plop/var/cache/apt/apt-file
/plop/var/cache/apt/archives
/plop/var/cache/apt/srcpkgcache.bin
johand@bata:~/tmp$ REP='/var/'
johand@bata:~/tmp$ sed -e "s#${REP}#/NOUVEAU/#g" brol.txt
/plop/NOUVEAU/cache/apt
/plop/NOUVEAU/cache/apt/pkgcache.bin
/plop/NOUVEAU/cache/apt/apt-file
/plop/NOUVEAU/cache/apt/archives
/plop/NOUVEAU/cache/apt/srcpkgcache.bin
Notons l'utilisation des guillemets doubles afin de permettre l'évaluation de ${REP} par le shell.
Gates gave ^W sold you the windows.
GNU gave us the whole house.(Alexandrin)
Salut,
edit: ce n'est pas très propre mais pour le moment j'efface la ligne et je l'insère:Alors dans ce cas au lieu de "i" (insertion), utiliser "c" (changement) :sed -i '9d' /etc/munin/munin.conf && sed -i "9ihtmldir $WEB\/munin" /etc/munin/munin.conf
$ cat fich
#htmldir /var/cache/munin/www
#htmldir /var/cache/munin/www
#htmldir /var/cache/munin/www
#htmldir /var/cache/munin/www
$ var="/var/www/munin/"
$ sed "3chtmldir ${var}" fich
#htmldir /var/cache/munin/www
#htmldir /var/cache/munin/www
htmldir /var/www/munin/
#htmldir /var/cache/munin/www
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question