假设我在会话期间在 Bash 中输入了以下命令:
nano file1.txt
nano file2.txt
netcat
ls
pwd
我知道我可以通过点击向上箭头来浏览这些命令,然后点击 Enter 运行所选的命令,但如果我想回到“nano”命令,我必须 sc
是否有一个组合键,我可以开始输入命令,然后按一些键,并且只有以已编写的内容开头的命令才会显示循环浏览?
答案1
使用命令行上已有内容进行搜索的正确方法是使用 CTRL + A 将光标移动到行的开头,使用 CTRL + R 调用反向历史记录,使用 CTRL + Y 将当前行粘贴到搜索中,然后再次使用 CTRL + R 反向搜索。
答案2
您可以使用 bang 表示法
!nan<Enter>
!?ano<Enter>
它们将分别查找并执行以指定字符串开头或包含该字符串的最新命令。
:p
如果您不确定,您还可以附加打印命令,它最终会成为历史记录中的上一个命令,因此只需点击并输入即可选择它。