Re: Récupérer le résultat d'une commande sed dans une variable ou un fichier : problème...
Le Fri, Nov 05, 2021 at 12:31:13AM +0100, roger.tarani@free.fr a écrit :
>
> Comment expliquer que la commande prend un fichier comme argument :
> sed '/^abc\|^$/! { p; s|^| -> '"${DOMAIN}"'|g }' monfichier #SUCCES
>
> mais refuse de prendre la valeur d'une variable ?
> sed '/^abc\|^$/! { p; s|^| -> '"${DOMAIN}"'|g }' "$TRUC" #ECHEC
Bonjour Roger,
c'est comme ça que sed (et beaucoup d'autres outils) a été conçu: opérer
sur le contenu d'un fichier dont le nom est passé en argument, ou alors
sur un flux passant par l'entrée standard.
echo 'toto' | sed 's/o/a/g' # renvoie tata
echo 'toto' > monfichier
sed 's/o/a/g' monfichier # renvoie tata
TRUC=monfichier
sed 's/o/a/g' "$TRUC" # renvoie tata
La variable $TRUC est remplacée par sa valeur avant que sed ne soit
executé. La commande executée avec monfichier ou $TRUC est donc
exactement la même.
Bonne journée
--
Charles Plessy Nagahama, Yomitan, Okinawa, Japan
Debian Med packaging team http://www.debian.org/devel/debian-med
Tooting from work, https://mastodon.technology/@charles_plessy
Tooting from home, https://framapiaf.org/@charles_plessy
Reply to: