从脚本中,如何检查交互式shell中是否存在函数?

时间:2016-08-15 14:14:05

标签: bash non-interactive

我正在为一些包装器脚本编写一个安装文件,并将这些脚本映射到底层命令的完成。

在我的.bash_profile中,这将git的完成映射到git_wrapper:

complete -F _git git_wrapper

在我的setup.sh中,以下内容不起作用,因为脚本不是交互式的(type _git失败,因为_git在非交互式shell中不可用):

if type _git &>/dev/null && ! grep "complete.*_git git_wrapper" ~/.bash_profile &>/dev/null ; then
    echo "complete -F _git git_wrapper" >> ~/.bash_profile
fi

在setup.sh中,如何检查_git完成是否可用于交互式shell?

0 个答案:

没有答案