如何激活FULL $ var完成

时间:2012-06-29 09:39:34

标签: bash variables ubuntu debian bash-completion

在Debian BASH下我可以做到以下几点:

foo=/path/to/some/file

cat $f[TAB]

如您所见,我可以通过按TAB自动完成变量$ foo。

在Ubuntu(11)下,行为不一样(我在我的bashrc中激活了'/ etc / bash_completion'。

这是有效的:

echo $f[TAB]

这个不起作用:

cat $f[TAB]

任何人都可以给我一个提示,如何让最后一个工作?

1 个答案:

答案 0 :(得分:3)

您可以通过cat删除/etc/bash_completioncomplete -r cat 提供的完成规范:

/etc/bash_completion

或者您可以查看修改complete -F _longopt -o filenames -o bashdefault cat 中提供的完成选项是否适用于您正在使用的Bash版本:

shopt -s direxpand

如果您使用的是Bash 4.2的最新修补版本,则有一个选项可能有所帮助(我还没试过):

{{1}}