我试图在下面保留 $if 并
希望以下输出
$if
bash 通过执行
$ 替换 来妨碍
$ sed -e 's:\\$:\\$:g' <<ENDOFFILE
> $if
> ENDOFFILE
Run Code Online (Sandbox Code Playgroud)
或者
$ tr '$' '\$' <<ENDOFFILE
> $if
> ENDOFFILE
Run Code Online (Sandbox Code Playgroud)
有没有办法将 $keywords 保留
到 stdout 而不
在 stdin 中显式地将它们转义出来?
我应该在尝试之前切换到另一个 shell 吗?
我不确定您要做什么,但 bash 正在您的 here 文档中执行参数扩展,因为分隔符ENDOFFILE
. 如果您将其更改为'ENDOFFILE'
bash 将不会扩展。