假设我在bashrc
:
i='cgi-bin/internal';
e='cgi-bin/external';
f='cgi-bin/foo';
b='cgi-bin/bar';
ad='cgi-bin/admin';
#etc...
当我在命令行vim $i/edit_
TAB 上使用变量时,它将扩展变量,命令行上的输入变为vim /www/productX/subdomain_x/cgi-bin/internal/edit_
(对应于我所在的任何站点)然后我 TAB TAB 以获得可能的完成。
没关系,功能不是问题。只是每次看到完整路径而不仅仅是变量的值会变得烦人。
有没有办法不在命令行上扩展bash变量而不影响功能?
是这样做的bash完成吗?
期望的结果是$i
不会扩展到它的值(视觉上)或$i
扩展到相对路径而不是完整路径。
答案 0 :(得分:2)
答案 1 :(得分:0)
我不确定您在bash启动脚本中使用了哪些其他设置,但对我来说,以下bash命令可以解决这个问题:
complete -r -v
答案 2 :(得分:0)
使用
shopt -u progcomp
为我工作,此后标签不再扩展变量。
一个shopt doc
https://www.gnu.org/software/bash/manual/html_node/The-Shopt-Builtin.html