带有heredoc的猫在zsh shell中不起作用

时间:2014-07-03 09:15:14

标签: shell zsh cat heredoc

当我尝试

cat > myfile << EOF
TEST TEXT
EOF

我只是得到一个空文件。使用echo命令也一样。这是怎么回事? 我只能考虑.zshenv配置文件中存在冲突的内容,但我不知道它可能是什么......

我正在使用zsh 4.3.6 (x86_64-suse-linux-gnu)

2 个答案:

答案 0 :(得分:0)

如果你的/ tmp(或你的$TMPDIR点)是只读的,可能会发生这种情况。

您应该能够通过将strace附加到您正在运行上述内容的zsh上来发现错误,例如使用以下方法:来自不同shell的strace -ff -s200 -o /tmp/zsh.log -p PID-goes-here

答案 1 :(得分:0)

这是另一种写作方式:

cat <<eos > filename
foo bar baz
eos

在zsh中有效。