Pack_simple.sh 3.3 KB
echo "WARNING WARNING WARNING WARNING WARNING "
echo "执行本脚本前,请先完成正常固件完整包的打包"
echo "WARNING WARNING WARNING WARNING WARNING "

#打包诱骗升级包
# 拼接字符串得到更新包名字
# 国内版
if [ $# -ne 2 ]; then
    echo "错误:必须且只能指定两个参数"
    echo "用法: ./Pack_complete.sh [DOMESTIC|OVERSEAS|UNUSE] [bin_name]"
    exit 1
fi

# 参数值校验
case "$1" in
    DOMESTIC)
        echo "____正在打包国内版____"
        ;;
    OVERSEAS)
        echo "____正在打包海外版____"
        ;;
    UNUSE)
        echo "____正在打包无指定版本____"
        ;;
    *)
        echo "错误:无效参数 '$1'未输入正确的语言版本"
        exit 1
        ;;
esac

BinName=$2 #一级压缩包的名字

TarPackage_second=UpgradePackage.tar.gz #二次解压包的名字
MD5saveFile=UpdateMD5num #md5文件内部的md5值 当前已改为放文件大小
FileSizeSaveFile=UpdateFlieSize #md5文件内部的文件大小

echo "________简易版二级包打开开始_________"

rm Temp_simplePack -rf 
mkdir Temp_simplePack
mkdir Temp_simplePack/Package/

echo "____app复制_____"
mkdir Temp_simplePack/Package/app
cp Package/app/JZ_UART_APP Temp_simplePack/Package/app

echo "____config复制_____"
mkdir Temp_simplePack/Package/config
cp Package/config/* -r Temp_simplePack/Package/config

echo "____kofile复制_____"
mkdir Temp_simplePack/Package/kofile

echo "____lib复制_____"
mkdir Temp_simplePack/Package/lib

echo "_____others复制_____"
mkdir Temp_simplePack/Package/others

echo "____ProFile复制_____"
mkdir Temp_simplePack/Package/ProFile
cp Package/ProFile/* -r Temp_simplePack/Package/ProFile

echo "____psdk复制_____"
mkdir Temp_simplePack/Package/psdk
cp Package/psdk/* -r Temp_simplePack/Package/psdk

echo "____sh复制____"
mkdir Temp_simplePack/Package/sh
cp Package/sh/* Temp_simplePack/Package/sh

cd Temp_simplePack
tar -zcf $TarPackage_second Package

echo "_____输出二次压缩包目录_____"
#参数说明 t 查看内容 f 压缩包名字指定
tar -tf $TarPackage_second

cd ..
cp Temp_simplePack/$TarPackage_second .
rm Temp_simplePack -rf


echo "________简易版二级包打开结束_________"

echo "________简易版一级包打包开始_________"
rm Temp -rf
mkdir Temp

mv $TarPackage_second ./Temp/

echo "____放入简易升级步骤"
cp ShellPack/simpleUp.sh ./Temp/updata.sh

# 如果是飞机的小包,放进语言文件
if [ "$1" == "DOMESTIC" ]; then
    echo 0 > ./Temp/LanguageInfo.txt
elif [ "$1" == "OVERSEAS" ]; then
    echo 1 > ./Temp/LanguageInfo.txt
elif [ "$1" == "UNUSE" ]; then
    echo "没有使用语言文件"
fi

#进入打包文件夹
cd Temp

echo "____校验码写入____"

# 获取二级压缩包的md5值
md5_File="$(md5sum "$TarPackage_second" | cut -d ' ' -f 1)"
echo $md5_File

#把md5校准码写进去
echo $md5_File | tee $MD5saveFile > /dev/null #覆盖写

#文件大小值
file_size=$(ls -l "${TarPackage_second}" | awk '{print $5}')
echo "文件的大小为: $file_size 字节"

# 把文件大小写入校准文件
echo "$file_size" | tee "$FileSizeSaveFile" > /dev/null # 覆盖写

echo "____开始打包____"
tar -zcf $BinName ./*
mv $BinName ../
cd ..
rm Temp -rf
echo "________简易版一级包打包结束_________"


echo "_____输出一级压缩包目录_____"
#参数说明 t 查看内容 f 压缩包名字指定
tar -tf $BinName