$() exécute la sortie de la commande qu'il y a dans les parenthèses.
Exemple :
ls
=> toto tata
(j'ai deux fichiers, toto et tata)
$(ls)
=> toto : command not found
(il a tenté d'exécuter toto tata, qui est donc le résultat de la commande ls, comme si toto était une commande avec comme paramètre tata)
Autre exemple plus proche de ce que tu cherches à faire :
echo ls
=> ls
$(echo ls)
=> toto tata
Donc il te conseille de faire un $(sed blablabla) : la commande sed affichera des commandes, et donc elles seront exécutées
Sinon le | sh conseillé dans un autre commentaire marchera tout autant.
En théorie, la théorie et la pratique c'est pareil. En pratique c'est pas vrai.
[^] # Re: simple :)
Posté par gUI (Mastodon) . En réponse au message [Résolu]Copier ou éxécuter un résultat de commande shell (stdout). Évalué à 2. Dernière modification le 30 mars 2019 à 08:26.
$()exécute la sortie de la commande qu'il y a dans les parenthèses.Exemple :
ls=> toto tata
(j'ai deux fichiers, toto et tata)
$(ls)=> toto : command not found
(il a tenté d'exécuter
toto tata, qui est donc le résultat de la commande ls, comme si toto était une commande avec comme paramètre tata)Autre exemple plus proche de ce que tu cherches à faire :
echo ls=> ls
$(echo ls)=> toto tata
Donc il te conseille de faire un
$(sed blablabla): la commandesedaffichera des commandes, et donc elles seront exécutéesSinon le
| shconseillé dans un autre commentaire marchera tout autant.En théorie, la théorie et la pratique c'est pareil. En pratique c'est pas vrai.