Bash在函数中完成?

Bash在函数中完成?,bash,function,bash-completion,pathname,Bash,Function,Bash Completion,Pathname,我目前拥有以下Bash函数: 函数xcd{ 如果[“$#”-gt 1];则 echo“用法:xcd[]”>&2 返回1 fi cd“/some/common/used/path/${1}” } 我希望它能够支持Bash完成——当我键入xcdfoo时,我希望它能够像键入cd/some/common/used/path/foo一样完成。有没有什么方法可以让Bash在这方面变得聪明呢?大概是通过观察${1}是如何使用的,而不只是手工编写Bash补全?用以下内容替换~/.bashrc中的函数: CDP

我目前拥有以下Bash函数:

函数xcd{
如果[“$#”-gt 1];则
echo“用法:xcd[]”>&2
返回1
fi
cd“/some/common/used/path/${1}”
}

我希望它能够支持Bash完成——当我键入
xcdfoo
时,我希望它能够像键入
cd/some/common/used/path/foo一样完成。有没有什么方法可以让Bash在这方面变得聪明呢?大概是通过观察
${1}
是如何使用的,而不只是手工编写Bash补全?

用以下内容替换
~/.bashrc
中的函数:

CDPATH="/some/commonly/used/path"
我假设到目前为止还没有使用CDPATH。编写
~/.bashrc
的源代码,然后可以将
cd foo
与bash的 完成