在 Bash 中快速执行历史命令的小技巧
最简单的方式是使用 Ctrl + r
快速搜索已经执行过的历史命令,然后回车就可以快速执行命令了。
reverse-search-history #
19 年的时候,我购买了 Linuxtoy 出的一个关于命令行的使用指南「像黑客一样使用命令行」。从中学到了一个小技巧就一直使用到了现在。
这个小技巧就是 reverse-search-history 。通过在 Bash 中 Ctrl + r
快速搜索已经执行过的历史命令,然后回车就可以达到快速执行命令了。
reverse-search-history,可以追溯的文档是在 关于 Bash 的手册 manual 。
目前 Bash 和 Zsh 都支持这个操作,但是 Fish Shell 不支持这个特性,参考 Issues ,所以那时候我又用回 Zsh 了。
fzf - fuzzy finder #
Ctrl + r
快捷键搜索的好处是 Bash 自带的,适合在服务器上使用,不用安装任何插件,缺点是但是对搜索不够友好,不能够模糊搜索。
而 fzf 可以做到模糊搜索,适合在本地开发机使用。安装和使用可以参考 Github 的文档。
Auto suggestions #
有些插件或者 shell 可以根据历史执行过的命令,自动建议命令,触发条件是需要先在命令行输入需要执行命令。插件会根据前缀匹配出最近的一条历史命令,通过 Ctrl + e
加回车执行命令。当然缺点也是只能根据输入的前缀来匹配命令,和之前的方案相比各有用途。
- zsh 插件 zsh-autosuggestions 。
- fish shell 自带 Autosuggestions。
Reference #
Bash – Using History Efficiently
- Previous: [10, 2, 1].sort() 在 JS 中会输出什么
- Next: 和青木老师学习日语的第一天