Мне нужно вывести текст как bash script, но в script. Для этого я использую кошку, но у нее есть один недостаток. Он интерпретирует переменные и прочее во время написания. Я хочу предотвратить это.
Как сделать это без цитирования всех varibles (мой script длинный с ошибкой)? Пример
cat >/tmp/script << EOF
$HOSTNAME
# lots of other stuff I do NOT want to escape like \$VARIABLE
# ...
EOF
cat /tmp/script
myhostname.mylan
Я хочу:
cat /tmp/script
$HOSTNAME
Изменить: Обратите внимание, что мой script (здесь только $HOSTNAME) очень длинный, я не хочу его менять. Также одиночное цитирование не работает с < lt;
cat >/tmp/script '<< EOF
$HOSTNAME
EOF'
File not found: EOF'
Какой трюк? Спасибо.