shell 自动检测文件,并进行配置对比和升级操作

#!/bin/bash
cd /root
file=`ls -t *.zip`
files=($file)
decoderfile=${files[@]:0:4}
decoderfiles=($decoderfile)
decoderfiless=${decoderfiles[3]}
decoder_version=${decoderfiless[@]:0:7}
#echo $decoderfiless
#echo $decoder_version
checkbin_dict(){
time=`date +"%m%d"`
bin_dict="/data1/bin_out_$decoder_version"
if [ -d $bin_dict ];then
echo "bin out's dict is exits"
read -p "please in put Y/N/other,input "Y" is delete bin,input "N" is keep bin,input "other" is creat another bin out dict:" checkbin
case $checkbin in 
Y)
echo "I will delete this bin"
cd $bin_dict
ls|xargs -n 10 rm -rf 
;;
N)
echo "I will keep this bin"
;;
other)
echo "I wiil creat other bin dict"
mkdir -p /data1/bin_out_$decoder_version_$time
;;
*)
echo "please in put Y/N"
exit 1
;;
esac
else
echo "bin_dict is not exits ,I wiil creat it!"
mkdir -p $bin_dict
fi
}
decoder_upgread(){
decoder_dict="/data1/new_do/decoder_$decoder_version"
cd /root
unzip VoLTE\ Linux\ Oracle\ $d
if [ -d $decoder_dict ];then
echo "decoder_dict is exits"
cd VoLTE\ Linux\ Oracle\ $decoder_version
cp libapp_dss_component_* $decoder_dict
cp *.exe $decoder_dict
cp *.ini $decoder_dict
cp libapp_dss_component_* /usr/lib64/
cp /data1/new_do/decoder_v4.0.0/LteLicense.ini $decoder_dict
 if [ -d $decoder_dict/log ];then
 echo "log is exits"
 else
 mkdir -p $decoder_dict/log
 fi 
else 
mkdir $decoder_dict
mkdir -p /$decoder_dict/log
chmod -R 777 $decoder_dict
cd VoLTE\ Linux\ Oracle\ $decoder_version
cp *.so $decoder_dict
cp *.exe $decoder_dict
cp *.ini $decoder_dict
cp libapp_dss_component_* /usr/lib64/
cp /data1/new_do/decoder_v4.0.0/LteLicense.ini $decoder_dict
fi
read -p "choose conf ,please input shanghai or hainan or lte:" chooseconf
case $chooseconf in 
shanghai)
cp /data1/new_do/decoder_v4.0.0/lteconfig.ini_4.0.0.sh $decoder_dict
cd $decoder_dict
mv lteconfig.ini lteconfig.ini_bak
conf_version=`cat lteconfig.ini_bak|grep Version`
awk 'NR==FNR{a[$1]=$0;next}NR>FNR{if ($1 not in a)print a[$1];else print $0}' lteconfig.ini_4.0.0.sh lteconfig.ini_bak >>lteconfig.ini
conf_version_old=`cat lteconfig.ini|grep Version`
sed -i "s/$conf_version_old/$conf_version/" lteconfig.ini
chmod -R 777 *
echo "decoder configure is ok ,I will start decoder!"
;;
hainan)
cp /data1/new_do/decoder_v4.0.0/lteconfig.ini_hainan_0606 $decoder_dict
cd $decoder_dict
mv lteconfig.ini lteconfig.ini_bak
conf_version=`cat lteconfig.ini_bak|grep Version`
awk 'NR==FNR{a[$1]=$0;next}NR>FNR{if ($1 not in a)print a[$1];else print $0}' lteconfig.ini_hainan_0606 lteconfig.ini_bak >>lteconfig.ini
conf_version_old=`cat lteconfig.ini|grep Version`
sed -i "s/$conf_version_old/$conf_version/" lteconfig.ini
chmod -R 777 *
echo "decoder configure is ok ,I will start decoder!"
;;
lte)
echo "conf is not user set!"
echo "decoder configure is ok ,I will start decoder!"
;;
*)
echo "please configure this conf file !"
exit 1
;;
esac
}
checkbin_dict
decoder_upgread

转载于:https://my.oschina.net/u/3246484/blog/1204226

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值