我想知道是否有一种方法可以将行重定向到文件并同时打印重定向的行?
目前我做这样的事情:
echo "123:456" > output.txt ; awk 'BEGIN{...} {print ...}' output.txt > output2.txt
我真的必须阅读output.txt吗再次使用 awk 还是有其他方法可以访问我重定向到 output.txt 的行,而不从磁盘中读取它们以便进一步处理它们?
答案1
看来你想要的是tee
,但更像是:
echo "123:456" | tee output.txt | awk 'BEGIN{...} {print ...}' > output2.txt
tee
将输入写入output.txt
并再次写入输出,即到 awk 的管道。
答案2
您应该能够使用以下方法来执行此操作tee
:
echo "123:456" > output.txt ; awk '<etc.>' output.txt | tee output2.txt