当您处于历史中间时,导航到历史上最早/最新的命令

Posted

技术标签:

【中文标题】当您处于历史中间时,导航到历史上最早/最新的命令【英文标题】:Navigating to the earliest/latest command in history when you're in the middle of your history 【发布时间】:2011-04-28 20:53:05 【问题描述】:

假设我在一个 bash 终端中并且有大量的命令历史。我按了很多次向上箭头,并且处于历史的“中间”。我现在想快速导航到历史记录中的第一个或最后一个命令(无需长时间按住向上或向下箭头)。这可能吗?如果有,实现这个的快捷键是什么?

【问题讨论】:

【参考方案1】:

看看man page:

man bash

这里我为你复制了你要找的东西:

previous-history (C-p)
    Fetch the previous command from the history list, moving back in the list.  
next-history (C-n)
    Fetch the next command from the history list, moving forward in the list.  
beginning-of-history (M-<)
    Move to the first line in the history.  
end-of-history (M->)
    Move to the end of the input history, i.e., the line currently being entered.

【讨论】:

注意,当META键不起作用时,可以使用Escape,然后。 vi模式下如何操作? 对于那些仍然感到迷茫的人:C 是 Control,M 是 Meta 键。 More in this answer。对于某些系统,Meta 键是 Alt 或 Alt + Shift。 在带有英文键盘的 Ubuntu 16.04 下,我必须按 Alt + @totymedli 非常感谢你:D 我认为对于知道“M”意味着什么的人来说,他们不会在寻找答案。【参考方案2】:

根据您的终端的设置方式,您通常可以执行 Ctrl+C 让您回到开头(无评论)然后继续向上一次或两次以获取您想要的最近的命令。

或者,使用history 命令将列出所有最近使用的命令以及与之关联的索引值。 !# 其中# 是索引号,将重新运行该命令。命令history | grep [command] 非常有用,可以尝试在您的历史记录中查找特定命令。

【讨论】:

ctrl-r 允许您反向搜索您的历史记录。 不知道Ctrl+C也回到了历史的尽头。 +1 因为我使用的是byobu,所以Alt+&gt; 映射到不同的功能。

以上是关于当您处于历史中间时,导航到历史上最早/最新的命令的主要内容,如果未能解决你的问题,请参考以下文章

通过命令过滤 ZSH 历史记录

react-router-redux 5:维护导航中的商店状态历史记录

从HTTP/0.9到HTTP/2:一文读懂HTTP协议的历史演变和设计思路

在导航历史记录中跳过视图

git 合并commit

世界上最早的书是?啥内容?最早的有记载的世界历史?