在bash里补全历史命令
本文介绍本人觉得最好用的bash配置技巧,一次配置,每天受益。
在bash里,最常见的搜索历史命令的办法是ctrl + r
,但是这个步骤太多,比较麻烦。
下面介绍一种非常快捷的补全方式。
执行:
1 | curl -L http://hengyunabc.github.io/bash_completion_install.sh | sh |
这样子,先输入部分命令,再按键盘的Up/Down
就可以自动补全出历史命令了。
工作原理
实际上给~/.inputrc
文件添加了下面的内容:
1 | "\e[A": history-search-backward |
前面两行自然是绑定了快捷键,后面两行是什么意思呢?
show-all-if-ambiguous
是指tab补全时,按一次tab就会把最长匹配的自动补全。具体参考 https://stackoverflow.com/a/42193784
completion-ignore-case
是指tab补全时,忽略大小写,这点也非常方便。
注意,在修改完
~/.inputrc
文件,要显式执行bind -f ~/.inputrc
才会生效。
题外话,在arthas
里也支持了Up/Down
自动补全历史命令这个特性,所以在arthas
里自动补全历史命令非常的方便。