Ich führe dieses kleine Testskript aus, das ich geschrieben habe:
#!/bin/bash
TESTCASE=$@
testHarness <<runTest
$TESTCASE
runTest
von der Kommandozeile:
./test.sh "1092$212"
aber das Dollarzeichen wird entfernt. Wenn ich ihm entkomme, funktioniert es. Aber ich dachte, die doppelten Anführungszeichen würden mich davor schützen, dies tun zu müssen. Kann mir bitte jemand helfen zu verstehen, was los ist und wie man das behebt?
Antworten:
Variablen werden weiterhin in doppelte Anführungszeichen gesetzt. Wenn Sie dieses Verhalten vermeiden möchten, sollten Sie stattdessen einfache Anführungszeichen verwenden.
quelle