
ファイルを使用しgcc
てmake
コンパイルしましたc
。実行可能ファイルの名前はですsequence
。 2つのターゲットがあります。
- 入力ファイル(例
in1
:)を持ってstdin
プログラムを実行します。プログラムがin1の使用を終了して終了したら、別の入力ファイル(つまりin2
ターミナルコマンドで指定)を使用して再実行します。 output1
以前の入力を上書きせずに、さまざまなプログラム実行時間のすべての出力を同じファイル(たとえば)に移動します。結果は次のとおりです。
入力ファイル:
in1
:
a
in2
:
b
in3
c
プログラムから:
putchar(getchar());
出力:
a
b
c
ターミナルコマンドで目的の結果を取得するには?
答え1
シェルの責任とプログラムの責任を混同しているようです。
あなたには2つの選択肢があります
プログラムが3つのファイルを開き、それをstdoutに書き込むようにします。これが猫がすることです。
program in1 in2 in3
shell-redirection-appendを使用してください>>
。
例えば
program <in1 >> file-name
program <in2 >> file-name
program <in3 >> file-name
または、括弧を使用してリダイレクトをオーバーライドします。
{
program <in1
program <in2
program <in3
} > file-name