Estoy ejecutando este pequeño script de prueba que escribí:
#!/bin/bash
TESTCASE=$@
testHarness <<runTest
$TESTCASE
runTest
desde la línea de comando:
./test.sh "1092$212"
pero el signo de dólar está siendo eliminado. Si me escapo, funciona. Pero pensé que las comillas dobles me protegerían de la necesidad de hacer esto. ¿Puede alguien ayudarme a entender qué está pasando y cómo solucionarlo?
Respuestas:
Las variables todavía se expanden entre comillas dobles. Si desea evitar este comportamiento, debe utilizar comillas simples.
fuente