#!/usr/bin/ksh
##脚本实现批量更改多个地市的多个配置文件##############
##1.修改数据库实例 ####
##2.修改用户名与密码 ####
##3.修改配置文件相关特定的路径 ####
######################################################
dburl1=uatdb
# 获取目录
#ls -l|grep ^d |awk '{print $9}' >>dirlist.txt
dircount=`wc -l dirlist.txt`
count=0
#if [ $dircount -ne 0 ]; then
#else
#exit
#fi
cat dirlist.txt |while read dirname
#获取地市简称
areaname=`echo $dirname |awk '{print substr($0,1,2)}'`
echo $areaname
#将目录转换成大写作为密码(typeset命令要在ksh里执行,bsh不支持)
typeset -u password1=$dirname
echo $password1
cd /usr1/run/hsc/conf/$dirname
#获取当前目录下的所有配置文件,目录除外
ls /usr1/run/hsc/conf/$dirname|grep -v '^d' > /usr1/run/hsc/conf/$dirname/filelist.txt
sleep 1
do
cd /usr1/run/hsc/conf/$dirname
echo `pwd`
cat /usr1/run/hsc/conf/$dirname/filelist.txt| while read name
do
#替换DBURL,DBUSER,DBPASS,AREA
sed -e"s/dburl\=szuat/dburl\=$dburl1/g;s/\/fshsc/\/$dirname/g;s/dbuser\=fshsc/dbuser\=$dirname/g;s/dbpass\=/dbpass\=$password1/g;s/area\=FS/area\=$areaname/g;s/area\=fs/area\=$areaname/g;s/areacode\=FS/areacode\=$areaname/g;s/ngbccs/$dburl1/g" $name >$name.tmp
mv $name.tmp $name
done
count=`expr $count + 1`
echo $count
if [$count -gt $dircount ];then
exit;
fi
done