0

コンソールにprintfステートメントを含む出力を生成するこのコードがあります。このコードをさまざまな変数で複数回実行するときに、どういうわけかデータを.txtファイルに収集したいのです。たとえば、プログラムが「produce」と呼ばれる場合、次の出力を取得したいと思います。

./プロデュース0
./プロデュース1
./プロデュース2

等々。これを自動化する方法はありますか?ありがとう。

4

2 に答える 2

1

このための簡単なシェルスクリプトを書くことができます。

for i in 1 2 3 4 5 6 7 8 9 10
do
echo "Output of produce for $i" >> output.txt
./produce $i >> output.txt
done

上記のコードをtest.shのようなファイルに入れます。次に、コンソールでコマンドsh test.shを実行すると、ファイルoutput.txtが目的の出力で作成されているのがわかります。

毎回スクリプトを実行する前に、必ずoutput.txtの名前を変更してください。

于 2012-10-30T07:43:29.713 に答える
0

シェルに神経質な場合は、コードを変更して、inputパラメーターを使用して名前が付けられたファイルに書き込みます。

ファイルへの書き込み方法については、このページを参照してください。

FILE *outputFile;
outputFile = fopen(strcat(strcat('output_', argv[1]), '.txt, "wt");  // output_0.txt, output_1.txt, etc

すべてprintf(fprintf(outputFile,に置き換えれば、それだけです。

于 2012-10-30T07:57:16.217 に答える