如何使用Perl正则表达式在Screen中搜索模式?
-
03-07-2019 - |
题
我有一个过程可以让我在屏幕上连续输出。我想在输出中通过以下Perl的正则表达式搜索CamelCase单词,以便我可以主动监视输出。
/\b([a-z]*[A-Z][a-z]*){2,}\b/
解决方案
我在GNU / Screen中测试并检查了源代码。两者都表明这是不可能的。搜索功能似乎仅支持基本字符串匹配。
我建议您使用 tee
命令将程序的输出发送到文件以及打印文件。之后您可以在文件上使用Perl或grep。
$ your_program | tee your_program_output
$ grep pattern your_program_output
其他提示
是的,捕获输出并搜索它。 gnu / screen不是捕获数据的正确工具,而且很多东西都可能出错。但显然你仍然可以在屏幕会话中运行它。
如果您已经在没有T恤的屏幕内运行程序并且不想再次运行它,请假设您的回滚缓冲区足够大,您可以将整个回滚缓冲区复制到文件,然后使用您喜欢的方法进行搜索。
不隶属于 StackOverflow