小编Zac*_*sch的帖子

如何从搜索恢复到原始命令

按照此处的说明,我通过 .bash_profile 进行编辑以启用向上和向下箭头,以根据之前的命令自动完成我在 shell 中输入的内容。

我添加到我的 .bash_profile 中:

# bind history search to up and down arrows
if [[ $- == *i* ]]
then
    bind '"\e[A": history-search-backward'
    bind '"\e[B": history-search-forward'
fi
Run Code Online (Sandbox Code Playgroud)

这很棒,但如果我找不到我要找的命令,我希望向下箭头返回到我的原始文本。

例如,假设我有三个以前的命令:

  • ls -l
  • ls -al

现在,我键入ls的目的是将其自动完成为ls -a.

我点击了向上箭头,它(使用我当前的实现)将我的文本自动补全到ls -al. 我再次点击向上箭头,这会将我的文本自动补全到ls -l. 在这一点上,我决定我不会找到我正在寻找的命令。如果我按下向下箭头,文本将变为ls -al,但再次按下向下箭头不会改变任何内容。我想ls在到达历史记录中的最新命令后按向下箭头返回到我的原始文本(在本例中)。

如果有人能帮助我或为我指明正确的方向,我将不胜感激。

谢谢!

bash keyboard-shortcuts command-history

6
推荐指数
1
解决办法
152
查看次数

标签 统计

bash ×1

command-history ×1

keyboard-shortcuts ×1