检查RPM包是否已经安装

###################RPM_CHECK1################# -->仅仅是检查单个rpm包是否安装,未安装的不能自动安装
#!/bin/bash
# check rpm is installed or not
uname -r
rpm --version

echo
P=${1?" must specify package name."}

rpm -qa "$P" > t1
my_size=$( wc -l < t1 )
echo " Size of report file is $my_size lines"

if [[ $( rpm -qa $P ) =~ ${P} ]]
# if [[ $( rpm -qa $P ) == *${P}* ]]
then
  echo " Package $P is installed."
else
  echo " Package $P not found."
fi

exit 0
###################RPM_CHECK1#################


###################RPM_CHECK2#################  -->可以实现多种rpm包的检查,未安装的自动安装
#!/bin/bash
#filename: check_rpm
uname -r
rpm --version

check_rpm()
{
	while (( $# > 0 ))
	do
		if ! rpm -q $1 &> /dev/null;then
			yum install $1 -y &>/dev/null
			if	[ $? == 0 ];then
				echo "$1 install is success!"
			else
				echo "$1 is not in the systerm Packages!"
			fi
		fi
	shift #执行一次shift则去掉第一个参数,始终只需判断$1即可  
	done
	exit 0
}

check_rpm $@
###################RPM_CHECK2################# 


###################RPM_CHECK3#################  -->结合以上两个脚本


#!/bin/bash
#filename: check_rpm
uname -r
rpm --version

P=${1?" must specify package name."}  #加入这一行表示必须需要输入一个有效的软件包名

check_rpm()
{
	while (( $# > 0 ))
	do
		if ! rpm -q $1 &> /dev/null;then
			yum install $1 -y &>/dev/null
			if	[ $? == 0 ];then
				echo "$1 install is success!"
			else
				echo "$1 is not in the systerm Packages!"
			fi
		else 
			echo "$1 is installed"
		fi
	shift #执行一次shift则去掉第一个参数,始终只需判断$1即可  
	done
	exit 0
}
###################RPM_CHECK3################# 


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值