#!/bin/bash
#检测输入参数 ./build.sh [需要打包的文件或文件夹]
if [ "$#" -ne 1 ]; then
echo "error: 2 args";
exit 1
fi
#输出的脚本文件
OUT=out.sh
#中间压缩包文件
TEMP=temp.zip
#压缩源文件
zip -r $TEMP $1
#将脚本输入到out.sh文件
echo -e '#!/bin/bash\n' > $OUT
echo 'payload_offset=$(($(grep -na -m1 "^MARKER:$" $0|cut -d':' -f1) + 1))' >> $OUT
echo 'tail -n +$payload_offset $0 | base64 -d > temp.zip && unzip temp.zip || exit 1' >> $OUT
echo 'rm temp.zip' >> $OUT
echo 'exit 1' >> $OUT
printf "\n\n\n" >> $OUT
echo 'MARKER:' >> $OUT
base64 $TEMP >> $OUT
rm $TEMP
#执行该脚本之后,最终会生成一个out.sh脚本文件,将其拷贝到目标设备即可!
觉得有帮助的话,打赏一下呗。。