tar_com=`rpm -qa|grep tar`
if [ -n tar_com ];then
echo 'tar ok'
else
echo 'tar no'
fi
-n : 來判定字符串非空
if [ -n str1 ] 當串的長度大於0時爲真(串非空)
上面的方法不太好
- 一般判斷某個包是否安裝不會使用grep去匹配,而使用rpm -qa xxx(包名),去確定指定的包是否安裝
- 使用 $? 去獲取上一條指令的返回碼,其中 0表示指令指令成功,否則執行失敗,此時如果執行rpm -qa|grep xxx就算沒有這個包,也不會報指令執行失敗
tar_com=`rpm -qa tar`
if [ -n tar_com ];then
echo 'tar ok'
else
echo 'tar no'
fi
或者
rpm -qa xxx
if [ $? -ne 0 ];then
echo "xxx包已經安裝"
else
echo "xxx包沒有安裝"
fi