为什么要编写一个脚本来检查是否在linux中安装了某个软件包,如果没有安装它呢?

时间:2017-11-11 12:38:03

标签: linux bash shell

假设我从github下载了一个bash脚本,然后在我的sys上运行它,然后运行它后显示

检查xyz包{found]

检查abc包[未找到]

安装abc ....

他们是如何做到的?

1 个答案:

答案 0 :(得分:0)

这是我能够检查它的方式:

## function to install missing packages - $1 : package name.
require_pkg() {

    if ! command -v $1 >/dev/null; then

        msg_warn missing_pkg $1
        echo "Do you want to install $1 ? (works only with apt-get package manager) [y/N]"
        read -r YESNO

        if [[ $YESNO =~ ^([yY][eE][sS]|[yY])$ ]]; then
            apt-get --force-yes --yes install $1
        fi

        echo "$1 will not be installed. This package is required so considere to install it ..."

    fi

}

如您所见,我使用了command -v。但是iirc有3或4种方法来检查是否安装了包!我选择了这个,因为,iirc,它是不同Linux操作系统中最可靠的之一。

有关信息,msg_warn是我在我的脚本中创建的一个函数(此答案中未显示),用于打印警告消息“missing package”。

希望以这种方式操作你的问题会激励你:)。