![在终端输出上搜索文本](https://linux22.com/image/50942/%E5%9C%A8%E7%BB%88%E7%AB%AF%E8%BE%93%E5%87%BA%E4%B8%8A%E6%90%9C%E7%B4%A2%E6%96%87%E6%9C%AC.png)
我正在运行一个带有命令的应用程序$ grails run-app
,该命令在终端中打印日志,如下所示。
我想要的是在此日志中搜索特定文本(例如user authorities
),以便我可以进一步验证。一种使用 Logging API 写入文本文件的方法,但我现在想在终端中搜索它。
我发现类似的问题如何直接在终端上搜索文本这表明screen
命令,但我不知道screen
在这种情况下如何工作。我尝试过
$ screen grails run-app
,但无法前进。
我可以看到屏幕列表
prayag@prayag:~/zlab/nioc2egdelonk$ screen -list
There is a screen on:
8076.pts-2.prayag (10/06/2013 12:13:25 PM) (Attached)
1 Socket in /var/run/screen/S-prayag.
答案1
如果你使用康索尔(KDE 终端模拟器),您可以使用Ctrl+ Shift+ F。这可能也适用于其他(Linux)终端模拟器;它已被证实可以在 GNOME 终端、Xfce 终端、Alacritty 和 Terminator 中运行。
答案2
Ctrl+a(默认screen
命令前缀),[(输入copy
模式)后跟?SEARCH_TEXT
似乎可以工作。按n转到下一个事件。从那里,您可以复制单词、行、区域等以转储到文件中或稍后粘贴(使用Ctrl+a, ])。
答案3
您可以在命令grep
后使用grails
:grails run-app | grep "user authorities"
。但是,您必须重新运行命令。
答案4
将输出重定向到管道并将其发送到grep
命令:
grails run-app | grep user authorities