有没有一种很好的方法可以在 bash 中打印(例如到 stdout)一个命令的所有可能完成的列表(如果我输入命令,然后按下 Tab 键,它会给我的那些)?
编辑:我想这不是很清楚,现在我又读了一遍。我知道如何手动完成。我想以编程方式进行。
bash 没有一个函数可以做到这一点。可编程完成很大程度上取决于各种参数,例如光标位置......
eval $(complete -p 'git' | sed s/^complete/compgen/)
Run Code Online (Sandbox Code Playgroud)
似乎有效,但非常脆弱。