在哪里放置 bash 完成脚本
Posted
技术标签:
【中文标题】在哪里放置 bash 完成脚本【英文标题】:Where to put bash completion scripts 【发布时间】:2017-12-20 06:43:54 【问题描述】:我已经实现了一些 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
当用户在命令行或 git bash 中键入 ktools -- + press tab
时,应自动建议命令。
【问题讨论】:
metacpan.org/release/MooseX-App-Plugin-ZshCompletion 所以你使用的是Windows?不同平台的标准位置可能不同。 【参考方案1】:我很确定您需要将其来源到您的.bashrc
(基本上包括它)。
打开~/.bashrc
并写入(如果它不存在,您可能需要创建它)
source your_bash_file
然后,在您的终端中,通过执行“刷新”
source ~/.bashrc
它应该可以工作。
【讨论】:
我在哪里可以找到.bashrc
文件我在我的userhome
中搜索过,但有任何
如果你不能在windows中创建.bashrc
***.com/questions/6883760/…【参考方案2】:
上面的答案非常不方便,特别是如果您有多个完成脚本并且有其他人安装和使用您的程序。
更方便的方法是在 /etc 等中创建一个包含所有完成脚本的文件夹,然后在 .bashrc 源中创建该目录中的所有内容。
【讨论】:
以上是关于在哪里放置 bash 完成脚本的主要内容,如果未能解决你的问题,请参考以下文章
不确定在哪里放置 Scripts.Render for JQuery