Одинарные кавычки не препятствуют расширению переменных внутри двойных кавычек:
$ echo "a'$RANDOM'" a'23976'
Вы можете заменить $
на \$
или '
с '\''
:
$ sh -c "echo a b | awk ''" b $ sh -c 'echo a b | awk '\'''\' b
Или используйте heredoc:
sh -s <<'END' echo a b | awk '' END