実行ファイルにコマンド結果を挿入する(1つのコマンド)

実行ファイルにコマンド結果を挿入する(1つのコマンド)

コマンド(またはコマンドチェーン)の結果をコマンド内の実行可能ファイルに挿入できますか?このような:

./a.out < echo 0

または、次のことを行う必要がありますか?

echo 0 > input.txt
./a.out < input.txt

ベストアンサー1

プログラムがa.outコマンドの出力をecho 0入力として読み取るようにするには、次のようにします。

echo 0 | ./a.out

または(具体的にbash):

./a.out < <(echo 0)

this>とthisは、出力と入力をリダイレクトする<リダイレクト演算子です。><

これ:

echo 0 > input.txt

echo出力を次の名前のファイルにリダイレクトするinput.txt


これ:

./a.out < input.txt

リダイレクト./a.out​入力ソースはコンテンツですinput.txt


複数のコマンドの場合は、次を使用します。複合コマンド:

{ echo 0; cat test.txt; } | ./a.out

おすすめ記事