【发布时间】:2011-04-14 15:31:02
【问题描述】:
我正在使用byobu/screen,我希望有一个新的屏幕会话默认包含一些专门用于跟踪特定日志文件的窗口。
我的.screenrc 看起来像这样(技术上这是我的.byobu/windows 文件):
chdir /home/matt/code/project/logs
screen -t 'logs' tail -F current.log
chdir /home/matt/code/project
screen -t 'errors' tail -F current.log | grep -A 3 "ERROR"
chdir /home/matt/code/project
screen -t 'project'
chdir
screen -t 'bash'
我的意图是在新屏幕会话中设置四个窗口:
-
current.log文件后面的标题为“日志”的窗口 - 标题为“错误”的窗口位于
current.log文件的尾部,并用greps 查找ERROR - 标题为“项目”的窗口从我的项目的主目录开始
- 标题为“bash”的窗口从我的主目录开始。
但是,screen -t 'errors' tail -F current.log | grep -A 3 "ERROR" 命令中的管道最终会被屏幕逐字解释,因此我的第二个窗口永远不会出现。
如何在此命令中转义管道以使其按我的意愿进行解释?
此外,是否有更简单的方法来设置 screen/byobu 以在启动时启动正在运行(复杂)命令的窗口?
【问题讨论】:
标签: bash pipe gnu-screen