bash使用选项值自动完成文件名

bash使用选项值自动完成文件名,bash,autocomplete,filenames,Bash,Autocomplete,Filenames,此问题是现有问题的延伸。我有一个命令,它希望接收位于$PWD/constant/gmtDicts中的文件名。我曾经启用这些文件名的制表符完成 例如,可以使用-case选项指示gmtFoam命令在$PWD以外的位置进行搜索 gmtFoam -case ~/anotherDir myFile 将查找文件~/anotherDir/constant/gmtDicts/myFile。如何扩展bash autocompletion函数以查看案例目录(如果已提供),如果未提供则默认为$PWD?当仅使用`gm

此问题是现有问题的延伸。我有一个命令,它希望接收位于
$PWD/constant/gmtDicts
中的文件名。我曾经启用这些文件名的制表符完成

例如,可以使用
-case
选项指示
gmtFoam
命令在
$PWD
以外的位置进行搜索

gmtFoam -case ~/anotherDir myFile

将查找文件
~/anotherDir/constant/gmtDicts/myFile
。如何扩展bash autocompletion函数以查看案例目录(如果已提供),如果未提供则默认为
$PWD
?当仅使用`gmtFoam-case时,自动完成也应该回到通常的文件/目录完成方法“已键入

我刚刚意识到我错误地将此发布在SO而不是unix.se上。如果迁移它会更好,那么可以这样做。您的完成函数需要扫描
-case
参数及其值,然后使用该参数生成完成,而不是使用默认值。您可以访问
COMP_words
中的所有命令行单词,因此只需扫描它们以获取所需内容。