我需要输出一些文本作为bash脚本,但在脚本中.我为此使用了猫,但它有一个缺点.它在写入过程中解释变量和内容.我确实想要阻止这一点.
如何在不引用所有变量的情况下做到这一点(我的脚本长得太长)?例
cat >/tmp/script << EOF
$HOSTNAME
# lots of other stuff I do NOT want to escape like \$VARIABLE
# ...
EOF
cat /tmp/script
myhostname.mylan
Run Code Online (Sandbox Code Playgroud)
我想要:
cat /tmp/script
$HOSTNAME
Run Code Online (Sandbox Code Playgroud)
编辑:请注意我的脚本(这里只有$ HOSTNAME)很长,我不想改变它.同时单引号不起作用与<<
cat >/tmp/script '<< EOF
$HOSTNAME
EOF'
File not found: EOF'
Run Code Online (Sandbox Code Playgroud)
有什么诀窍?谢谢.
tor*_*rek 75
如果你想要引用的所有内容:
cat << 'EOF'
stuff here with $signs is OK
as are `backquotes`
EOF
Run Code Online (Sandbox Code Playgroud)
请参阅手册中"此处文档"部分.