1. 程式人生 > >shell if語句特殊用法(高階用法),工具安裝判斷

shell if語句特殊用法(高階用法),工具安裝判斷

for i in wget gcc		
do
    if [ ! `rpm -qa | grep ^$i-[0-9].` ] ; then
        yum install -y $i
        [ $? -ne 0 ] && echo 'yum cannot install '$i && yum_right=3
    fi
done
[ $yum_right ] && exit 3

上邊程式碼,是執行判斷某安裝包是否安裝執行成功,如果未安裝成功則列印'yum cannot install '

其if的高階用法在於yum_right變數,[]內的yum_right如果在做了宣告,不管賦值為多少,結果均為真,相反未宣告為假。

這種寫法不等同於[  $yum_right  -eq 3  ],前者做是否宣告判斷真假,後者變數關係判斷真假。