Bash 使用脚本输出完成
Bash completion using output from script
我知道有很多关于bash完成的教程,但我就是想不通。
我要的就是这个。如果我输入 myscript[tab][tab],那么 "myscript list-commands" 就是 运行。它将输出可用命令的 space 分隔列表(但我可以输出它,但是是合适的)。该输出列表用于制表符完成。
我应该在 .bashrc 中添加什么来实现这一点?
最简单的方法是使用您的脚本支持的 words/commands 列表:
将以下内容放入您的 .bashrc
以使您的脚本 myscript
支持命令 add
、list
、delete
:
complete -W "add list delete" myscript
这将导致
> myscript [tab][tab]
add list delete
希望对您有所帮助。要进一步了解比简单单词表更多的动态选项,请查看 complete
命令的联机帮助页:https://ss64.com/osx/complete.html
我知道有很多关于bash完成的教程,但我就是想不通。
我要的就是这个。如果我输入 myscript[tab][tab],那么 "myscript list-commands" 就是 运行。它将输出可用命令的 space 分隔列表(但我可以输出它,但是是合适的)。该输出列表用于制表符完成。
我应该在 .bashrc 中添加什么来实现这一点?
最简单的方法是使用您的脚本支持的 words/commands 列表:
将以下内容放入您的 .bashrc
以使您的脚本 myscript
支持命令 add
、list
、delete
:
complete -W "add list delete" myscript
这将导致
> myscript [tab][tab]
add list delete
希望对您有所帮助。要进一步了解比简单单词表更多的动态选项,请查看 complete
命令的联机帮助页:https://ss64.com/osx/complete.html