コンソールにprintfステートメントを含む出力を生成するこのコードがあります。このコードをさまざまな変数で複数回実行するときに、どういうわけかデータを.txtファイルに収集したいのです。たとえば、プログラムが「produce」と呼ばれる場合、次の出力を取得したいと思います。
./プロデュース0 ./プロデュース1 ./プロデュース2
等々。これを自動化する方法はありますか?ありがとう。
このための簡単なシェルスクリプトを書くことができます。
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の名前を変更してください。
シェルに神経質な場合は、コードを変更して、inputパラメーターを使用して名前が付けられたファイルに書き込みます。
ファイルへの書き込み方法については、このページを参照してください。
FILE *outputFile;
outputFile = fopen(strcat(strcat('output_', argv[1]), '.txt, "wt"); // output_0.txt, output_1.txt, etc
すべてprintf(
をfprintf(outputFile,
に置き換えれば、それだけです。