我想在bash中执行以下操作,但没有插入变量:
cat >aBashScript.sh <<EOL
$name
EOL
该文件应包含'$ name',但它是空的。如何做到这一点?
答案 0 :(得分:35)
您可以在here documents中停用引用,如下所示:
cat >aBashScript.sh <<'EOL'
$name
EOL
答案 1 :(得分:5)
你需要逃避美元符号,只需在其前面添加一个反斜杠就可以将其转义为:
cat >aBashScript.sh <<EOL
\$name
EOL
或者禁用@Michael建议的引用。