68 lines
1.3 KiB
Bash
Executable File
68 lines
1.3 KiB
Bash
Executable File
#!/bin/bash
|
||
fileName=$1
|
||
projectPath=$2
|
||
PATH=PATH:/usr/bin:/usr/sbin:/usr/local/bin
|
||
|
||
basePath=$3
|
||
if [ ! -d $basePath ]; then
|
||
mkdir $basePath -p
|
||
fi
|
||
sleep 1
|
||
cd $basePath
|
||
echo "current path: $(pwd)"
|
||
if [ ! -f "$fileName" ];then
|
||
echo "backEndUpgarde 文件 $fileName 不存在1!"
|
||
exit 0
|
||
fi
|
||
|
||
oriSum=$(md5sum $fileName)
|
||
oriSum="${oriSum% *}"
|
||
echo "origin file $fileName md5sum: $oriSum"
|
||
|
||
if [ ! -d "$projectPath" ]; then
|
||
echo "文件夹 $prjectPath 不存在!"
|
||
exit 0
|
||
fi
|
||
|
||
cd $projectPath
|
||
desSum=""
|
||
if [ ! -f "$fileName" ];then
|
||
cp $basePath/$fileName .
|
||
exit 0
|
||
else
|
||
desSum=$(md5sum $fileName)
|
||
desSum="${desSum% *}"
|
||
echo "current path: $(pwd)"
|
||
echo "destination file ${fileName} md5sum: ${desSum}"
|
||
fi
|
||
|
||
if [ ${oriSum} = ${desSum} ];then
|
||
echo "destination file is same with origin file,no need to replace"
|
||
exit 0
|
||
fi
|
||
|
||
if [ -f "$fileName"_bak2 ];then
|
||
rm "${fileName}"_bak2
|
||
fi
|
||
if [ -f "${fileName}"_bak1 ];then
|
||
mv ${fileName}_bak1 ${fileName}_bak2
|
||
fi
|
||
if [ -f "$fileName"_bak ];then
|
||
mv ${fileName}_bak ${fileName}_bak1
|
||
fi
|
||
if [ -f "$fileName" ];then
|
||
mv ${fileName} ${fileName}_bak
|
||
fi
|
||
|
||
cp $basePath/"${fileName}" .
|
||
chgrp nogroup ${fileName}
|
||
chown nobody ${fileName}
|
||
|
||
result=$?
|
||
if [ $result = 0 ];then
|
||
echo "file ${fileName} in ${projectPath} upgraded."
|
||
fi
|
||
newSum=$(md5sum $fileName)
|
||
newSum="${newSum% *}"
|
||
echo "the md5sum of new file is ${newSum} "
|