很多时候我会使用 Ctrl-R 进行反向搜索并错误输入一些字母。 Bash 跳了数百行,而我正处于一周前使用的命令中间。
是否有快捷方式可以跳回到我最近输入的命令?
编辑:在 CentOS 服务器和 Mac OS X 上测试之后,看起来这只发生在 OS X 上。
最佳答案
我一直在为同样的问题而苦苦挣扎。
你可以通过使用 ctrl-c 中止来解决这个问题。无论您是在进行反向搜索还是使用箭头滚动浏览历史记录,中止操作都会在最后一个命令之后返回到历史记录滚动提示。
更新
这是我刚刚学到的一个很好的技巧。 Bash 和许多其他程序在底层使用 Readline 进行命令行解释。可以在 .inputrc 文件中或使用 bind 命令配置 Readline 的键绑定(bind)。绑定(bind)可以使用 Readline 提供的一些函数。例如,我在 vi 模式下使用 Bash,但我仍然喜欢使用 Emacs 风格的 ctrl-A,所以我的 .bashrc 文件中有这一行:
绑定(bind) '\C-a:beginning-of-line'
列出所有可用的 Readline 函数: 绑定(bind)-l
其中一个函数是历史终结。该功能确实如其名称所暗示的那样。这种方法与仅使用 abort 命令的区别在于,这会使您保持相同的提示。
关于bash - 如何在 bash 中快速滚动到命令历史记录的最新/结尾?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10201430/