「cat<file.txt」と「echo<file.txt」の違い

「cat<file.txt」と「echo<file.txt」の違い

「abcdef」という内容を含むfile.txtというファイルがありますが、これを実行すると出力cat < file.txtabcdefが表示されますが、これを実行するとecho < file.txt出力は返されません。入力リダイレクトがechoでは機能しませんが、catでは機能しないのはなぜですか?

答え1

入力リダイレクトが動作しませんが、echo動作するのはなぜですかcat

このechoコマンドは標準入力のようなものを受け入れないので、引数だけを受け入れますcat

からman cat

cat - ファイルをリンクして標準出力として印刷

要約

猫[オプション]...[ファイル]...

説明する

ファイルをリンクする標準入力、標準出力として。

からman echo

echo - テキスト 1 行を表示します。

要約

エコ[短いオプション]...[ひも]...

エコロングオプション

説明する

エコひも標準出力として。

(強調は私のもの)

答え2

リダイレクトの代わりに、次のようにecho読み取ることができます。file.txt

echo "$(<file.txt)"

出力例:

abcdef

関連情報