bash下管道没有成功传递内容问题?

在命令行下#program1 | program2 我的program1会每5秒钟在标准输出输出一些文本, 我的program2程序里面从标准输入读, 然后进行一些处理, 为什么我的program2没有正常读到东西?

前面可能有点抽象, 具体就类似 top | grep zsh, 但是没有输出, 怎么破?

阅读 4k
3 个回答

原因是program1没有循环读的问题, 现在还是去hack program1去了, 不采用这种方式了

top | grep zsh可以有输出,只不过top只显示排名前若干位的进程,可能zsh刚好没有入围海选而已。

top是交互式程序,如果你可以使用ps命令来grep你的关键字,也可以使用pgrep等执行一些更加复杂的进程信息的grep

ps -ef | grep zsh

使用pgrep的高级例子:

pgrep -u username zsh
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题