Answers:
更新中的文字/etc/inputrc
以包括
设置完成忽略案例
然后使用^X ^R
重新加载配置。
^X ^R
重新加载inputrc
bind "set completion-ignore-case on"
从命令行执行;我认为,这仅是终端会议
经过事后观察,进行了重组,以对比使用[.]inputrc
vs.的优缺点.bash_profile
。
顶一下帽子,向underscore_d寻求帮助。
注意: Bash中的命令行编辑是由Readline库提供的。定制它并非易事,但值得学习;它的功能包括定义用于插入预定义文本片段的自定义键盘快捷键的功能-请参见《 Bash参考手册》中的“ 命令行编辑 ”。
要在Bash中始终使制表符完成不区分大小写:
选项A:如果您已经拥有:
/etc/inputrc
文件(适用于整个系统,需要进行修改sudo
) 和/或~/.inputrc
文件(特定于用户)
和/或
您打算广泛地自定义readline库,并且/或者希望在脚本调用时对脚本也有效read -e
:
加线
set completion-ignore-case on
到哪个文件,具体取决于您希望该设置对所有用户还是当前用户都有效(如有必要,请创建文件)。
使文件和目录名称的完成更容易的一个相关命令是:
set show-all-if-ambiguous on
这样,当有多个匹配项时,无需再按两次 Tab键。
选项B:或者,您可以通过将Readline命令作为单个参数传递给内建命令,将Readline命令添加到~/.bash_profile
OS X(或~/.bashrc
Linux)上的用户特定文件中:bind
bind "set completion-ignore-case on"
bind "set show-all-if-ambiguous on"
注意/ 中的bind
命令优先于或中的等效命令。~/.bash_profile
~/.bashrc
/etc/inputrc
~/.inputrc
如上所述,以这种方式定义的Readline配置在调用激活Readline支持以读取用户输入的脚本中不会生效。read -e
cd
命令。这解决了这个问题,也将为我节省成千上万的按键。:)
show-all-if-ambiguous
。但是,既然您说“作为替代”,那么bind
当inputrc
文件似乎不必要时,通过这样做实际上有什么好处吗?
inputrc
,但是我很高兴创建~/.inputrc
并添加了这些代码,以及其他非常有用的指令。我想我们假设所有读者都知道/etc/inputrc
会影响其他用户(除非后者覆盖受影响的设置)?就在我们提到警告时;)
/etc/inputrc
或~/.inputrc
由指定的文件INPUTRC
是它只能进入的位置。在Bash提示符下输入该命令将无效。