Bonjour et merci de passer par ce sujet.
J'ai actuellement un problème avec sed dans un script sh que je développe.
Lorsque j'exécute la commande dans le shell tout se passe parfaitement, la ligne recherchée est supprimée correctement, mais dès que j'essaye d'exécuter la même commande à partir de mon script j'ai l'erreur.
voici un exemple de la commande sed que j'utilise :
Elle fonctionne parfaitement.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 sed 's_zone "un-site.com" { type master; file "~/test/conf/db.un-site.com"; };__g' < ~/test/backup/named.conf.local.bak_20090428 > ~/test/named.conf.local
voici maintenant une partie du code source du script pour lequel cette commande a été crée :
Le message d'erreur est :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 cp "/etc/bind/named.conf.local" "/etc/bind/backup/named.conf.local.bak_${DATE_SUPPRESSION}" RECHERCHE="s_zone \"${LOCAL_NOM_SITE}\" { type master; file \"/etc/bind/conf/db.${LOCAL_NOM_SITE}\"; };__g" PARAMS="'${RECHERCHE}' < /etc/bind/backup/named.conf.local.bak_${DATE_SUPPRESSION} > /etc/bind/named.conf.local" `sed "${PARAMS}"`
Je ne comprends pas ou se pose le problème d'autant plus que si je fais un echo de sed ${PARAMS}, la commande affichée est correcte; je peux l'exécuter "manuellement" via l'invite de commande en la copiant collant et étrangement là il n'y a aucune erreur.
Code : Sélectionner tout - Visualiser dans une fenêtre à part sed: -e expression n°1, caractère 1: commande inconnue: `''
Votre aide est vraiment la bien venue, des explications aussi si possible.
D'avance merci.
Partager