自动更新svn代码到运行环境的shell脚本
更新妈妈圈后台
#!/bin/sh
#命令格式 sh autoUpdateFile.sh 清单文件.txt svn版本号
#执行示例 sh autoUpdateFile.sh 17655.txt 17655
#源文件地址
SOURCE_FILE_LOCATION="/./../scripts/mamaquan/svncode/"
#目标文件地址
TARGET_FILE_LOCATION="/.././wwwroot/mamaquanadmin/"
#TARGET_FILE_LOCATION="target/"
#更新代码脚本地址
SCRIPT_LOCATION="/./../scripts/mamaquan/"
time=$(date "+%Y-%m-%d%H:%M:%S")
cat "$1" | while read FILENAME; do
#先判断目标文件是否存在
if [ -f "$TARGET_FILE_LOCATION$FILENAME" ];then
#先更新源文件到指定版本
svn info $SOURCE_FILE_LOCATION$FILENAME;
echo "现在升级源文件到版本$2";
svn update -r $2 $SOURCE_FILE_LOCATION$FILENAME;
#先备份目标文件
mv $TARGET_FILE_LOCATION$FILENAME $TARGET_FILE_LOCATION$FILENAME"_bak$time";
echo "已经备份文件"$TARGET_FILE_LOCATION$FILENAME"_bak$time";
#再复制源文件到目标目录
cp $SOURCE_FILE_LOCATION$FILENAME $TARGET_FILE_LOCATION$FILENAME;
echo "已经更新文件"$TARGET_FILE_LOCATION$FILENAME;
#不是文件,则判断源目录是否目录
#elif [ -d "$SOURCE_FILE_LOCATION$FILENAME" ] ;then
# sh $SCRIPT_LOCATION"update-mamaquan.sh" -f -r $2 -m $FILENAME
else echo "WARNING:$TARGET_FILE_LOCATION$FILENAME文件 or 目录 不存在,请检查文件$1是否正确!!!";
fi
done
更新接口代码
#!/bin/sh #执行示例 sh autoUpdateFile.sh test.txt 17655
#源文件地址 SOURCE_FILE_LOCATION="/../.....s/mapi/svncode/mapi.mama.cn/" #目标文件地址 TARGET_FILE_LOCATION="/..../w...oot/appios/mapi.mama.cn/" #TARGET_FILE_LOCATION="target/" #更新代码脚本地址 #SCRIPT_LOCATION="/.../..../mamaquan/" time=$(date "+%Y-%m-%d%H:%M:%S") cat "$1" | while read FILENAME; do #先判断目标文件是否存在 if [ -f "$TARGET_FILE_LOCATION$FILENAME" ];then #先更新源文件到指定版本 svn info $SOURCE_FILE_LOCATION$FILENAME; svn update -r $2 $SOURCE_FILE_LOCATION$FILENAME; #先备份目标文件 mv $TARGET_FILE_LOCATION$FILENAME $TARGET_FILE_LOCATION$FILENAME"_bak$time"; echo "已经备份文件"$TARGET_FILE_LOCATION$FILENAME"_bak$time"; #再复制源文件到目标目录 cp $SOURCE_FILE_LOCATION$FILENAME $TARGET_FILE_LOCATION$FILENAME;
echo "已经更新文件"$TARGET_FILE_LOCATION$FILENAME; #不是文件,则判断源目录是否目录 #elif [ -d "$SOURCE_FILE_LOCATION$FILENAME" ] ;then # sh $SCRIPT_LOCATION"update-mamaquan.sh" -f -r $2 -m $FILENAME else echo "WARNING:$TARGET_FILE_LOCATION$FILENAME文件 or 目录 不存在,请检查文件$1是否正确!!!"; fi
done