J'essaie d'imprimer uniquement les lignes contenant la variable $ foo. J'ai essayé d'utiliser des guillemets doubles et des accolades en vain. Quelle est la bonne façon de passer une variable shell à une regex dans sed?Comment passer une variable de bash à regex
sed -n 's:\("${foo}".*$\):\1:p' file.txt
Etes-vous sûr que votre problème est de passer la variable? Avez-vous vérifié que vous avez une correspondance lorsque vous utilisez la valeur littérale? – merlin2011
Les guillemets simples empêchent la substitution de variable. Vous devez faire quelque chose comme ceci: 'sed -n 's: \ ('" $ {foo} "'. * $ \): \ 1: p' fichier.txt'. Utilisez écho sur cette ligne pour voir (plus ou moins) ce qui se passe. – rici