我想要做的是:
>记录器脚本
>’head’命令,所以我可以保存初始进程输出的第一行.
到目前为止我尝试过的(不成功)是:
./myProgram | tee> (myLogger log.txt)|头> firstLines.txt
问题是,头部完成后myProgram会立即退出.
即使我在tee命令中使用-i,也无法让myProgram继续运行.
由于记录器可能会将传入的文本附加到现有文件,因此执行
head log.txt> firstLines.txt
在这种情况下不起作用.
最佳答案
您可以使用awk作为两者的替代方法:
./myProgram |
awk 'NR<=10{print > "firstLines.txt"} NR>10{close("firstLines.txt")} 1' > log.txt