変数内の$ドル記号をエスケープしてコマンドを実行する

変数内の$ドル記号をエスケープしてコマンドを実行する

次のコードがあります:

startCmnd="sudo -- bash -c"
test="${startCmnd} \"echo 'Hello this is a \$TEST' >> hello.txt\""
bash -c "${test}"

Hello this is a $TEST期待される結果はファイル内のテキストであるはずですが、その代わりに のみ が配置されますHello this is a

それはそのように行われなければならない

これを修正する方法、またはこれを実現するためのより良い方法をご存知の方はいらっしゃいますか?

ご協力いただければ幸いです

関連情報