Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sql-server-2005/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Regex 如何使用Perl正则表达式在屏幕中搜索模式?_Regex_Perl_Gnu Screen - Fatal编程技术网

Regex 如何使用Perl正则表达式在屏幕中搜索模式?

Regex 如何使用Perl正则表达式在屏幕中搜索模式?,regex,perl,gnu-screen,Regex,Perl,Gnu Screen,我有一个在屏幕上连续输出的过程。我想通过以下Perl的正则表达式在输出中搜索CamelCase单词,以便能够主动监视输出 /\b([a-z]*[A-Z][a-z]*){2,}\b/ 我在GNU/Screen中测试并检查了源代码。两者都表明这是不可能的。搜索功能似乎仅支持基本字符串匹配 我建议您使用tee命令将程序的输出发送到一个文件,并将其打印出来。之后,您可以在文件上使用Perl或grep $ your_program | tee your_program_output $ grep pat

我有一个在屏幕上连续输出的过程。我想通过以下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不是捕获数据的正确工具,很多事情可能会出问题。但显然,您仍然可以在屏幕会话中运行该程序。

如果您已经在屏幕内运行了该程序,并且不希望再次运行该程序,则可以使用您最喜欢的方法进行搜索。

谢谢您的回答!--你看到在$man屏幕上是不可能的了吗?嗯,我在手册页上找不到这个。我使用的是4.0.3版。@ayman:您在屏幕中的默认搜索是什么?我问这个问题是因为我现在无法进行默认搜索。我不确定你所说的默认搜索是什么意思。以下是搜索滚动缓冲区的操作:*按ctrl+a esc。*按向后搜索。*输入搜索字符串并按Enter键。我的screenrc中没有任何特别的搜索功能。默认情况下,它处于启用状态。