0

我已经定义了一个 bash_completion 脚本。在某些情况下,我想回退到大多数命令默认发生的基于文件的基本完成。为此,我正在使用compgen,但我无法让它进入子目录。

想象一下,我在一个目录中运行 compgen,该目录包含一个名为bin. 当我跑步compgen -f bi时,我得到了bin。我希望这会返回bin/,然后允许我再次推动 TAB 以下降到bin目录的内容中。但取而代之的是,complete只获得一个值并假设它已到达处理结束。这与 bash 完成的工作方式不同,通常ls bi[TAB]会导致ls bin/.

由于我无法让它工作,暂时我已经编写了自定义代码,该代码下降到目录中以执行正确的 bash 完成,但必须有一种方法可以compgen直接执行此操作。

4

0 回答 0