我正在尝试与CTRL- 相似地搜索我的bash历史记录r,但要指明前进方向。
这一直是我的痛苦,我只打一次,过于频繁CTRL- r,再次找到先前的命令。
您如何像反向搜索一样向前搜索Bash历史记录?
我正在尝试与CTRL- 相似地搜索我的bash历史记录r,但要指明前进方向。
这一直是我的痛苦,我只打一次,过于频繁CTRL- r,再次找到先前的命令。
您如何像反向搜索一样向前搜索Bash历史记录?
Answers:
您也可以向前搜索。在bash信息手册中,“ 8.2.5在历史记录中搜索命令 ”:
要在历史记录中向后搜索特定的字符串,请输入
C-r
。键入将C-s
搜索历史记录。
但是,Ctrl-S的问题是有时会与XON / XOFF流控制发生冲突(例如在Konsole中)。搜索是readline功能,但是您应该能够将其绑定到其他键。更新:更简单更好的只是通过运行禁用XON / XOFF
stty -ixon
.bash_profile
和.profile
只,发布登录炮弹。我会将其放入.bashrc
(我从中获取.profile
)。
[[ $- == *i* ]] && stty -ixon
可以用来避免这里描述
.bash_profile
所连接的每台机器,那么对超级用户的此回答就可以解决。
IMHO的最佳技巧是通过pgup
和启用pgdown
。只是把它放在你的~/.inputrc
"\e[5~": history-search-forward
"\e[6~": history-search-backward
注销/登录,输入前几个字母,然后按pgup
或pgdown
以搜索整个历史记录
ctrl-R
搜索所有包含单词的行,而历史搜索搜索行以单词开头
/etc/inputrc
(例如,在Ubuntu中)。
您可能想尝试https://github.com/dvorka/hstr,它允许使用(可选)基于度量的排序对Bash历史记录进行“建议框样式”过滤,即,在向前和向后的方向上,效率和速度都大大提高:
它可以轻松绑定到Ctrl-r和/或Ctrl-s
sudo add-apt-repository ppa:ultradvorka/ppa; sudo apt-get update; sudo apt-get install hh; hh --show-configuration >> ~/.bashrc;
我通常按ESC终端,然后按>。至少会重置,然后您可以尝试减少点击次数,而不必CTRL+ R。