gih*_*han 5 bash perl bash-completion
我已经实现了一些 perl 脚本,在某些情况下,我必须将一些命令行参数传递到我的程序中。可用性角度我决定将一些添加bash completion script到我的项目中。 .请让我知道我可以把我的bash completion script
自定义 Perl 脚本位置
C:\scripts\tool\bin\ktools.pl
还要添加bin系统变量的路径。
我已经把我的自动完成脚本放在
C:\scripts\tool\bin\etc\bash_completion.d\ktools\foo
Bash 完成脚本
_foo()
{
local cur prev opts
COMPREPLY=()
cur="${COMP_WORDS[COMP_CWORD]}"
prev="${COMP_WORDS[COMP_CWORD-1]}"
opts="--help --verbose --version"
if [[ ${cur} == -* ]] ; then
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
return 0
fi
}
complete -F _foo ktools
Run Code Online (Sandbox Code Playgroud)
当用户输入ktools -- + press tab命令行或 git bash时,应自动建议命令。
我很确定你需要将它来源到你的.bashrc(基本上包括它)。
打开~/.bashrc并写入(如果它不存在,您可能需要创建它)
source your_bash_file
Run Code Online (Sandbox Code Playgroud)
然后,在您的终端中,通过执行“刷新”
source ~/.bashrc
Run Code Online (Sandbox Code Playgroud)
它应该工作。