我有这段代码在控制台上生成一些带有printf语句的输出。当我使用不同的变量多次运行此代码时,我想以某种方式将数据收集到.txt文件中,例如,如果我的程序被称为“生成”,我想获得输出:
./produce 0 ./produce 1 ./produce 2
等等。有什么方法可以自动化吗?感谢。
答案 0 :(得分:1)
您可以为此编写一个简单的shell脚本。
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。
答案 1 :(得分:0)
如果您对shell感到紧张,那么只需修改代码以写入使用输入参数命名的文件。
请参阅this page了解如何写入文件。
FILE *outputFile;
outputFile = fopen(strcat(strcat('output_', argv[1]), '.txt, "wt"); // output_0.txt, output_1.txt, etc
将所有printf(
替换为fprintf(outputFile,
,就是这样。