linux / ubuntu终端命令行中的ctrl + r


17

使用CTRL+,R您可以搜索以前的命令(在Ubuntu的终端中)。但是,它似乎总是显示搜索词的最后一次出现。有什么办法浏览所有结果吗?

Answers:


34

键入要搜索的几个字符后,可以再次按CTRL + R来浏览与您键入的内容匹配的历史记录。

但是它将限于历史记录的大小。


真棒!那正是我想要的!
alfasin 2012年

1
要控制历史记录大小,可以注意到,它HISTFILESIZE控制了历史记录文件(~/.bash_historyHISTSIZE的大小,但控制了特定终端历史记录的大小,而后者则决定了回溯的距离Ctrl+R。我在一台机器上注意到了这一点,在该机器上我扩大了前一个变量,但没有扩大后者。两者最初都设置为500,但是如果要保存更多的反向搜索历史记录,则两个变量都需要更新。
丹尼尔·安德森

8

您只需要CTRL-R再次按。


2

如果您只想一次查看所有匹配的历史记录行,请尝试fc -ln | grep

mress:10077 Z$ fc -ln -100 | grep \^cd 
cd /Volumes/Development/android-sdk-mac_x86
cd ~/Downloads/MagicTrackpad.pkg
cd Resources
cd English.lproj
cd ../..
cd MagicTrackpadMultiTouchUpdate1.0.pkg
cd ..
cd 

-100表示“最后100个命令”;默认值为20,或者您可以指定范围。)


1

要进一步搜索,您必须CTRL+R再次。

但是,如果您想要命令列表,则可以使用

history | grep 'command to search'
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.