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

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

按照说明进行操作这里,我通过 .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

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

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

  • ls -l
  • ls -al

现在,我打字的ls目的是将其自动补全为ls -a.

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

如果有人能帮助我或为我指出正确的方向,我将非常感激。

谢谢!

答案1

Ctrl+K将删除从光标到行尾的文本。所以如果您没有移动光标,Ctrl+K将为您提供(即有效恢复)原始文本

相关内容