echo '#!/bin/bash' > cc.sh
echo 'BASE_VERSION=`pwd`' >> cc.sh
echo 'cd $BASE_VERSION' >> cc.sh
echo"echo \"************************************start to customize folder**************************************\"" >> cc.sh
while readline
do
echo "echo \"customize>>>>>>>>>>>>>$line\"" >> cc.sh
dest=`echo $line | sed s/$OLD_PROJECT/$NEW_PROJECT/g` //----------------把$OLD_PROJECT替换成$NEW_PROJECT
echo "cp -rvf $line $dest">> cc.sh //-------------把老目标拷贝一份新目标
sed -i s:$line:$dest:g files.txt //---------------把files文件里面保存的符合条件的也替换掉
done <folder.txt
echo "echo "customize folder end"" >> cc.sh
echo "echo \"**************************************start to customizefiles **************************************\"" >> cc.sh
while readline
do
echo "echo \"customize>>>>>>>>>>>>>>$line\"" >> cc.sh
flag_old=`echo $line | grep $OLD_PROJECT`
flag_new=`echo $line | grep $NEW_PROJECT`
if [ "$flag_old" != ""-a "$flag_new" != "" ];then //--------如果满足条件的行中有老项目名和新项目名
file_name=`echo $line | grep full_$OLD_PROJECT`
if [ "$file_name" !="" ];then
dest=`echo $line | seds/full_$OLD_PROJECT/$NEW_PROJECT/g`
else
dest=`echo $line | seds/$OLD_PROJECT/$NEW_PROJECT/g` //替换新项目作为目标
fi
echo "mv $line $dest">> cc.sh //直接把旧目标替换为新目标
echo "sed -i s/full_$OLD_PROJECT/$NEW_PROJECT/g $dest" >> cc.sh
echo "sed -i s/$OLD_PROJECT/$NEW_PROJECT/g $dest" >> cc.sh //------------在新目标文件中替换新目标字符
fi
if [ "$flag_old" = "" -a "$flag_new" != "" ];then //-------a的意义在于且,如果旧目标不在,新目标存在
echo "sed -i s/full_$OLD_PROJECT/$NEW_PROJECT/g $line" >> cc.sh
echo "sed -i s/$OLD_PROJECT/$NEW_PROJECT/g $line" >> cc.sh //直接替换行长那个的旧为新目标
fi
if [ "$flag_old" != ""-a "$flag_new" = "" ];then //----------------如果就在,新不在
file_name=`echo $line | grep full_$OLD_PROJECT`
if [ "$file_name" !="" ];then
dest=`echo $line | seds/full_$OLD_PROJECT/$NEW_PROJECT/g`
else
dest=`echo $line | seds/$OLD_PROJECT/$NEW_PROJECT/g` //----------------------替换旧为新作为目标
fi
echo "cp $line $dest">> cc.sh //--------------从旧复制一份新目标
echo "sed -is/full_$OLD_PROJECT/$NEW_PROJECT/g $dest" >> cc.sh
echo "sed -is/$OLD_PROJECT/$NEW_PROJECT/g $dest" >> cc.sh //-----------替换新目标中的旧项目
fi
done <files.txt
echo"echo \"customize files end\"" >> cc.sh
bash cc.sh //--------------------执行脚本