Je sais que je peux utiliser la fonction de substitution de processus de bash pour spécifier un paramètre de fichier via la substitution de processus, puis utiliser un document ici pour préciser les données, comme ceci:Utiliser la substitution de processus avec HereDocument qui est stocké dans une variable
foo --config <(cat <<EOF
# contents of config file
...
EOF
)
Lorsque j'ai besoin du même document ici à deux endroits différents dans le même script, il serait plus utile de stocker le document ici dans une variable.
Comment puis-je faire quelque chose comme ceci:
read -r -d '' MY_CONFIG <<EOF
# contents of config file
...
EOF
Alors, comment puis-je appeler foo
pour passer le contenu de $MY_CONFIG
au paramètre --config
?
'less' peut donner un faux positif:' moins -f <<< "MY_CONFIG $" 'produit le même résultat que votre exemple , mais le fait en utilisant stdin pas un fichier. Pour mieux approcher l'usage que vous souhaitez, considérez 'md5sum <(echo" $ MY_CONFIG ")' vs 'md5sum <<<" $ MY_CONFIG "'. – bishop