假设我有一个脚本,我想通过管道传输到另一个命令或重定向到一个文件(sh
示例中通过管道传输到该文件)。假设我正在使用 bash。
我可以使用echo
:
echo "touch somefile
echo foo > somefile" | sh
Run Code Online (Sandbox Code Playgroud)
我也可以使用cat
以下方法做几乎相同的事情:
cat << EOF
touch somefile
echo foo > somefile
EOF
Run Code Online (Sandbox Code Playgroud)
但是如果我用“EOF | sh”替换“EOF”,它只会认为它是heredoc的一部分。
我怎样才能使它cat
从标准输入输出文本,然后将其通过管道传输到任意位置?