我想在 bash 中执行以下操作,但没有插入变量:
cat >aBashScript.sh <<EOL
$name
EOL
该文件应该包含$name
,但它是空的。如何做到这一点?
您可以通过引用限制字符串来禁用此处文档中的参数扩展:
cat >aBashScript.sh <<'EOL'
$name
EOL
您需要转义美元符号,只需在其前面加上反斜杠即可转义,如下所示:
cat >aBashScript.sh <<EOL
\$name
EOL
或者按照@Michael 的建议禁用引用。