我我试图理解bash这里的文档功能。下面的代码按预期工作并返回" abc"到终端。如果我用cat
替换程序echo
我做没有看到任何输出。为什么我不能通过这里传递文件回声?是因为它是内置的bash吗?
cat <<EOF
abc
EOF
&#34; ABC&#34;按预期输出到终端。
虽然没有输出以下的comamnd -
echo <<EOF
abc
EOF
答案 0 :(得分:4)
你想:
cat <<EOF
abc
EOF
否则,您所做的只是运行echo
,其stdin连接到其中包含abc
的临时文件。由于echo
不读取stdin,因此它永远不会发现是否有内容等待从那里读取。