如何搜索终端输出


32

假设我打开了一个终端,其中包含过去几个小时/几天来我以前命令的数千行输出。如何在记录的输出中搜索字符串?我对不需要鼠标的解决方案特别感兴趣。

我知道我应该使用tee,但这并不总是很方便。

我知道我可以“全选”,然后打开编辑器,粘贴,然后搜索,但是我希望找到更简单的方法(“全选”似乎需要鼠标)。

我希望菜单栏中有一个“查找...”命令(如Mac OS X一样)。


2
直到您在OS X中提到它之前,我什至没有意识到有一个“查找...”命令,因此对该问题+1可以作为我对Google搜索的答案。
ArtOfWarfare 2013年

Answers:


16

对于大多数终端仿真器来说,在回滚中查找文本是一个缺点。我所知道的唯一提供的是OS X Terminal和Terminator。也就是说,您可以在任何终端中运行GNU屏幕,并在复制模式下搜索其回滚缓冲区。


谢谢geekosaur。我还刚刚在ubuntu网站上找到了这个“想法”,似乎只是在确认目前尚不可能:brainstorm.ubuntu.com/idea/9841

只需添加即可使用基于TMux或Screen的Byobu
Boynux

终结符在搜索时不会突出显示文本。
user171453 '16

48

如果您正在运行gnome终端(ubuntu上的默认GUI终端),则可以单击shift+ctrl+f,键入搜索词,然后按Enter。仍然是图形,但不需要鼠标。


感谢SynapticUnderrun,但是您的提示似乎对我不起作用。我正在使用全新安装的ubuntu 10.4。

1
这适用于Ubuntu 10.10和11.04。我现在正在运行10.10并使用gnome-terminal 2.32.0,因此也许升级gnome-terminal会有所帮助。由于此操作使用gtk弹出窗口输入搜索文本,因此必须运行X才能运行。但是您不需要使用鼠标,它将搜索整个终端缓冲区(您可以在“编辑”->“配置文件首选项”对话框中将其设置为“无限”)。

感谢SynapticUnderrun,下次我可以升级时一定会寻找。

xfce4-terminal(X)ubuntu Raring 13.04中也为我工作。谢谢。
Gringo Suave

4
这应该是公认的答案。适用于Ubuntu 14.04 LTS。
user171453 '16

7

在终端数据中查找字符串的快捷方式:ctrl + shift + f


1
在上默认xfce4-terminal 0.6.3使用Xubuntu 16.04
Jaakko

3

您是否考虑过使用pipe和grep?

YourCommand | grep str

希望这可以帮助


4
他要求搜索已经运行的命令的输出,还提到tee并不总是很方便使用,因此grep也是!
阿米尔(Aamir)

1

在kde中尝试konsole。它也适用于gnome / unity。将“查找”快捷方式编程为alt-f或ctrl-f,它可以向前或向后搜索,此外还会突出显示与搜索模式匹配的新输出。


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.