尝试检测是否安装了bash时出错

时间:2018-02-06 19:43:25

标签: shell packages

如果安装了bash,我正在编写一个输出脚本。我知道它有dpkg -s,但我希望保持简单。

当我在(putty)telnet中输入时:

    echo $(opkg list_installed bash* | grep "bash*") 

如果已安装,我会收到此回音

    bash - 4.3.30-r0.1

如果没有安装,我会得到一个空行。

我的剧本:

if opkg list_installed bash* | grep "bash*" &>/dev/null;
then
    echo "[DEBUG]: Found: " $(opkg list_installed bash* | grep "bash*")
else
    echo "[DEBUG]: Bash is not installed" 
fi

当我运行此脚本时:如果已安装,则输出结果为:

    root@zero:~# ./test.sh
    [DEBUG]: bash - 4.3.30-r0.1
    root@zero:~#

如果没有安装bash,我会收到一个错误,而不是安装它的回声:

    root@zero:~# ./test.sh
    -sh: ./test.sh: not found
    root@zero:~#

1 个答案:

答案 0 :(得分:0)

打印bash版本,或者如果未安装,请打印" no bash ":

bash --version || echo no bash