Shell脚本案例(三).检查关键配置是否一致

版权声明: https://blog.csdn.net/gramdog/article/details/80411081

检查关键配置是否一致:
std_conf_file作为标准文件,所有需要检测的配置都可以卸载这个文件中。
summer_conf_file是summer服务的配置文件,需要检测该文件中的配置项的值是否与标准文件中配置项的值相等。
1、先判断标准配置文件是否存在,如果不存在,就说明不用检测,那么直接输出OK就好了。
2、如果标准配置文件存在,那么循环遍历标准配置文件中的配置项。
item为标准配置文件中配置项的键,
std_value为标准配置文件中配置项的值,
act_value为summer服务的配置文件中键为标准配置文件的键的值。
先判断act_value是否存在,如果不存在,证明item not exsit in conf file 
如果act_value存在,再去比较std_value的值是否与act_value的值相等。




monitor_hms_standard_conf()
{
std_conf_file="/etc/check_summer_conf_ini"
summer_conf_file="/home/summer/conf/config.xml"

err_flag=0
if [ ! -f $std_conf_file ];then
echo "OK"
return 1
fi
for line in `cat $std_conf_file`
do
item=`echo $line | awk -F'=' '{printf $1}'`
std_value=`echo $line | awk -F'=' '{printf $2}'| awk -F'\r' '{printf $1}'`
act_value=`grep $item $hms_conf_file | awk -F'>' '{printf $2}' |awk -F'<' '{printf $1}'`
if [ ${act_value}x = x ];then
            echo "$item not exsit in conf file,WARN"
            err_flag=1
            continue
fi
if [ ${std_value}x != ${act_value}x ];then
echo "$item($std_value|$act_value),WARN"
err_flag=1
fi
done
}

猜你喜欢

转载自blog.csdn.net/gramdog/article/details/80411081