加入收藏 | 设为首页 | 会员中心 | 我要投稿 辽源站长网 (https://www.0437zz.com/)- 云专线、云连接、智能数据、边缘计算、数据安全!
当前位置: 首页 > 服务器 > 搭建环境 > Linux > 正文

linux – 如何将进程的输出传递给logger命令和head命令?

发布时间:2021-01-11 19:38:43 所属栏目:Linux 来源:网络整理
导读:我想要做的是: 开始一个连续输出文本的过程 输出到两个命令的管道: 记录器脚本 head命令,所以我可以保存初始进程输出的第一行. 到目前为止我尝试过的(不成功)是: ./myProgram | tee> (myLogger log.txt)|头> firstLines.txt 问题是,头部完成后myProgram

我想要做的是:

>开始一个连续输出文本的过程
>输出到两个命令的管道:

>记录器脚本
>’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

(编辑:辽源站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读