filepath=$(cd "$(dirname "$")"; pwd)
packagePath="$filepath"/package
zipPath="$filepath"/package.zip if [ -d "$packagePath" ]; then
# 删除旧zip包
rm -fr "$zipPath"
# 把package重命名为packageBase
mv "$packagePath" "$packagePath"Base
# 复制一份packageBase并命名为package
cp -rf "$packagePath"Base "$packagePath"
# 删除零时文件里的svn文件
cd "$packagePath"
find . -type d -name ".svn" |xargs rm -rvf;
# 给零时文件打包并命名为package.zip
cd "$filepath"
zip -r package.zip package
# 6 删除零时文件
rm -fr "$packagePath"
# 7 把packageBase的名字再还原为位package
mv "$packagePath"Base "$packagePath" echo "=-=-=-=-=-=-=-=-=-=-"
echo "打包成功"
else
echo "=-=-=-=-=-=-=-=-=-=-"
echo "打包失败,package目录不存在!!!"
fi
echo "=-=-=-=-=-=-=-=-=-=-"
后来写出的更靠谱的方法:复制到上级目录下打包再移动到本级目录,这样不用对package本身造成影响,避免svn文件删除导致问题以及webstorm项目必须reload的问题:
filepath=$(cd "$(dirname "$")"; pwd)
packagePath="$filepath"/package
zipPath="$filepath"/package.zip if [ -d "$packagePath" ]; then
# 删除旧zip包
rm -fr "$zipPath"
# 复制一份package到上层
cd "$filepath"
cp -rf "$filepath"/package ../package
# 删除零时文件里的svn和idea文件
cd ../package
find . -type d -name ".svn" |xargs rm -rvf;
find . -type d -name ".idea" |xargs rm -rvf;
# 给零时文件打包并命名为package.zip
cd ../
zip -r package.zip package
# 复制zip包到sharpteacher里去
cp -rf package.zip "$filepath"
# 删除零时文件和零食zip
rm -fr package
rm -fr package.zip echo "=-=-=-=-=-=-=-=-=-=-"
echo "打包成功"
else
echo "=-=-=-=-=-=-=-=-=-=-"
echo "打包失败,package目录不存在!!!"
fi
echo "=-=-=-=-=-=-=-=-=-=-"