Bash grep从屏幕输出并分离
我目前正在编写一个bash脚本,它定期检查分离屏幕会话的服务器输出中的一些特殊单词,但是它进入会话(如果grep发现了什么),而不是显示grep输出。以下是我尝试过的:Bash grep从屏幕输出并分离,bash,shell,Bash,Shell,我目前正在编写一个bash脚本,它定期检查分离屏幕会话的服务器输出中的一些特殊单词,但是它进入会话(如果grep发现了什么),而不是显示grep输出。以下是我尝试过的: screen -r foo | grep bar 这将为我提供正确的返回代码,但不会在以后分离会话!我也尝试了&&screen-d,但没有任何改变。 那么,我的脚本如何告诉我,在我的“foo”屏幕会话中运行的服务器的输出中是否有“bar”?我认为,您的问题是屏幕的输出方式不能通过grep进行搜索。如果是这样,那么您尝试使用sc
screen -r foo | grep bar
这将为我提供正确的返回代码,但不会在以后分离会话!我也尝试了&&screen-d
,但没有任何改变。
那么,我的脚本如何告诉我,在我的“foo”屏幕会话中运行的服务器的输出中是否有“bar”?我认为,您的问题是
屏幕的输出方式不能通过grep
进行搜索。如果是这样,那么您尝试使用screen-rfoo | grep bar&&screen-d
可能是正确的方法
我建议使用-L
选项启动初始屏幕
会话以启用日志记录。然后可以在日志文件中搜索所需的值