xti*_*tin 4 bash command-line autocomplete bash-scripting
我正在寻找的不是如何在 bash 中为另一个程序添加自动完成功能,而是一种将 bash 中发生的事情的结果转换为字符串的方法,基本上:
autocomplete "/etc/apa"
Run Code Online (Sandbox Code Playgroud)
会回来
/etc/apache2/
Run Code Online (Sandbox Code Playgroud)
所以我可以在我的脚本中使用它。
非常感谢任何帮助,因为我能找到的只是如何使用“完整”的 bash 函数,它做了一些不同的事情;)
干杯,拉斐尔
Bash
有一个内置命令compgen
可以帮助你很多。例如,如果您想知道键入时哪些目录会自动完成cd /etc/s<TAB>
:
$ compgen -d /etc/s
/etc/security
/etc/sgml
/etc/skel
/etc/ssh
/etc/ssl
/etc/subversion
/etc/sudoers.d
/etc/sysctl.d
$
Run Code Online (Sandbox Code Playgroud)
然后,以下命令会告诉您将进入哪个目录cd /etc/se<TAB>
:
$ compgen -d /etc/se
/etc/security
$
Run Code Online (Sandbox Code Playgroud)
compgen
可以采用complete
命令的大多数选项。有关更多详细信息,请参阅bash 的手册。
归档时间: |
|
查看次数: |
735 次 |
最近记录: |