Je lance ce petit script de test que j'ai écrit:
#!/bin/bash
TESTCASE=$@
testHarness <<runTest
$TESTCASE
runTest
à partir de la ligne de commande:
./test.sh "1092$212"
mais le signe dollar est supprimé. Si je m'échappe, ça marche. Mais je pensais que les doubles guillemets me protégeraient de la nécessité de le faire. Quelqu'un peut-il m'aider à comprendre ce qui se passe et comment y remédier?
Réponses:
Les variables sont toujours développées entre guillemets doubles. Si vous souhaitez éviter ce comportement, utilisez plutôt des guillemets simples.
la source