用于验证Linux上docker安装的Shell脚本

时间:2016-11-14 21:36:52

标签: linux shell docker sh dockerfile

我想编写一个shell脚本来验证是否安装了docker。

如果安装了docker:

$ docker -v
Docker version 1.7.0, build 0baf609
$ echo $?
0

如果未安装docker:

$ docker -v
The program 'docker' is currently not installed. You can install it by typing:
apt-get install docker
$ echo $?
127

这是我的剧本:

#!/bin/bash

docker -v
if echo $? = 128 ; then
    echo "The program 'docker' is currently not installed."
else
    echo "Continuing with dockerized way"
fi

这里是为了测试目的,我在没有安装docker的机器上运行它,我保持127 = 128,条件错误,所以它应该进去,但仍然打印程序'docker'目前没有安装。我想知道我在这里失踪了什么。

1 个答案:

答案 0 :(得分:1)

正确的语法是:

if [ $? -eq 128 ]; then
...

为了使其更加强大,您可能需要检查:

if [ $? -ne 0 ]; then
...