bash多行字符串无插值

Jos*_*kin 18 bash

我想在bash中执行以下操作,但没有插入变量:

cat >aBashScript.sh <<EOL
$name
EOL
Run Code Online (Sandbox Code Playgroud)

该文件应包含'$ name',但它是空的.怎么做到这一点?

Mic*_*ael 44

您可以在此处的文档中禁用引用,如下所示:

cat >aBashScript.sh <<'EOL'
$name
EOL
Run Code Online (Sandbox Code Playgroud)


Geo*_*rey 5

你需要逃避美元符号,只需在其前面添加一个反斜杠来逃避它,就像这样:

cat >aBashScript.sh <<EOL
\$name
EOL
Run Code Online (Sandbox Code Playgroud)

或者根据@Michael建议禁用引用.