一尘不染

如何更改bash历史记录的完成情况以完成生产线中已有的内容?

linux

几个月前,我发现了一个命令,该命令使我的bash历史记录在按向上箭头时可以自动完成在行中的内容:

$ vim fi

$ vim file.py

我想在我的新计算机上进行设置,因为这样可以节省大量时间来保存大量历史记录。问题是我一辈子都记不起提到它的地方,不幸的是,无休止的bash参考资料和教程的阅读也无济于事。

有人知道命令吗?


阅读 234

收藏
2020-06-02

共1个答案

一尘不染

大概像

#〜/ .inputrc
“ \ e [A”:历史搜索向后
“ \ e [B”:历史搜索

或等效地,

#〜/ .bashrc
如果[[$-== * i *]]
然后
    绑定'“ \ e [A”:向后搜索历史'
    绑定'“ \ e [B”:历史搜索-转发'
科幻

(if语句检查交互模式)

通常,“向上”和“向下”分别绑定到Readline函数previous-historynext-history。我更喜欢将PgUp /
PgDn绑定到这些功能,而不是替换正常的Up / Down操作。

#〜/ .inputrc
“ \ e [5〜”:向后搜索历史
“ \ e [6〜”:历史搜索

修改后~/.inputrc,重新启动Shell或使用Ctrl+ XCtrl+ R使其重新读取~/.inputrc


顺便说一句,如果您正在寻找相关文档:

Bash使用GNU
Readline库
获取shell提示和历史记录。

2020-06-02