Bash 防止在heredocs中计算包含在反勾号中的表达式

Bash 防止在heredocs中计算包含在反勾号中的表达式,bash,shell,Bash,Shell,我有这样一个文本: foo bar `which which` 如果使用herdoc执行此操作,则会得到一个空白文件: ➜ ~ echo <<EOT > out heredoc> foo bar heredoc> `which which` heredoc> EOT ➜ ~ cat out ➜ ~ 我不想对哪个进行评估。引用标签以防止对反勾号进行评估 $ cat << "EOT" > out foo bar `which

我有这样一个文本:

foo bar
`which which`
如果使用herdoc执行此操作,则会得到一个空白文件:

➜  ~  echo <<EOT > out
heredoc> foo bar
heredoc> `which which`
heredoc> EOT
➜  ~  cat out

➜  ~  

我不想对
哪个
进行评估。

引用标签以防止对反勾号进行评估

$ cat << "EOT" > out
foo bar
`which which`
EOT

$ cat out
foo bar
`which which`
$cat out
富吧
`哪个哪个`
EOT
$cat out
富吧
`哪个哪个`

哦,对不起,我本来想做猫的。问题是,它会将其写入文件:
其中:shell内置命令
。有没有办法在不进行计算的情况下执行此操作?引用标签以防止对反勾号进行计算。仅供参考,这还将禁用其他bash表达式(例如变量计算)。要仅禁用反勾选计算,您可以通过添加反斜杠来避免反勾选,例如“为什么这样做?”??Bash中没有健全性。这里有关于关闭替换的相关文档,文档:,因此有3个选项:要么
\EOT
'EOT'
要么
“EOT”
$ cat << "EOT" > out
foo bar
`which which`
EOT

$ cat out
foo bar
`which which`