在等号 (=) 之后按 TAB 键时如何让 bash 自动完成?例如启动 Abaqus,我使用命令行
abaqus job=
并希望能够在“=”后按 TAB 并获取文件列表。现在,我可以在“=”后面插入一个空格,按 Tab 键获取文件列表,选择文件,然后删除空格。
我知道 bash 完成,但这种方式涉及很多,除非有人有一个确切的示例。
答案1
你要么去学习如何摆弄 bash可编程完成(不适合胆小的人;-))或者只是禁用它和
shopt -u progcomp
您将得到经典的readline(3)
命令/变量/文件名补全[1]。
如果可编程完成已被禁用但=<Tab>
仍然不起作用,您应该检查COMP_WORDBREAKS
变量并向其中添加=
字符(如果尚未包含该字符)。
[1] 对我来说,对 Debian 的正确修复一直是
apt-get remove --purge bash-completion
这将把它彻底连根拔起,并防止它偷偷回来。