私はここのbashのドキュメント機能を理解しようとしています。以下のコードは期待通りに動作し、端末に「abc」を返します。私がプログラムcat
をecho
で置き換えた場合、出力が表示されません。なぜ私はここにエコーする文書を渡すことができないのですか?それはbashの組み込みだからですか?
cat <<EOF abc EOF
「echo << EOF」が期待通りに動作しない理由
「abc」が期待通りに端末に出力されます。
cat <<EOF
abc
EOF
はそうでない場合は、何をやっていることはただでabc
を持つ一時ファイルに接続し、その標準入力とecho
を実行している:
以下なしの出力は、あなたがしたいthough-
echo <<EOF
abc
EOF
'<< EOF'は、コンテンツをstdinに置きます。 'echo'はstdinから読み込みません。 –
stdinと引数の違いについては、私の答え[here](https://superuser.com/questions/600253/why-is-xargs-necessary/600273#600273)を参照してください。 –