Bash:选择与模式匹配的上一个命令

标签 bash shell

我知道使用向上和向下箭头的 bash 历史导航。

我想要一种懒惰的方式来选择与某些正则表达式匹配的上一个命令(比整个命令更短,因此输入所需的时间更少)。

bash 可以吗?

如果没有,其他shell有这样的功能吗?

最佳答案

您始终可以使用 CTRL-R 向后搜索您的历史记录,然后键入上一个命令的某些部分。再次点击 CTRL-R(在第一次点击之后)会重复您的查询(如果有则跳转到下一个匹配项)。

我个人将其用于正则表达式搜索(因为尚无法进行正则表达式搜索(AFAIK)):

# search (using perl regexp syntax) your entire history
function histgrep()
{
     grep -P $@ ~/.bash_history
}   

编辑: 要通过该功能搜索最近的历史记录项目,请参阅 this (在设置 $PROMPT_COMMAND 时)。

关于Bash:选择与模式匹配的上一个命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39688169/

相关文章:

linux - crontab提示错误:/bin/sh .backup.sh no such file or directory

bash - 为什么我的 bash 脚本因 ffmpeg 而停止?

用于静态框架的 iOS 聚合 Shell 脚本,以支持设备和所有模拟器架构

linux - 如何避免kill命令输出消息?

python - 如何在不设置shell路径的情况下将Anaconda与系统python隔离

linux - 在通过 SSH 连接到另一个盒子时获取用户输入

bash - For循环的参数收集空格而不是参数

bash - 为什么从标准输入读取的 bash 中的回显字符串不显示空格字符

bash - bash IFS 在这个例子中是如何工作的?

bash - 为什么这个不重定向到/dev/null?