first commit

This commit is contained in:
xin
2025-08-06 18:21:21 +08:00
commit e00a8f4847
10 changed files with 651 additions and 0 deletions
+74
View File
@@ -0,0 +1,74 @@
#!/bin/bash
# 压缩并上传files目录到七牛云
# 需要环境变量: QINIU_ACCESS_KEY, QINIU_SECRET_KEY
set -e
# 检查环境变量
if [[ -z "$QINIU_ACCESS_KEY" ]] || [[ -z "$QINIU_SECRET_KEY" ]]; then
echo "错误: 请设置环境变量 QINIU_ACCESS_KEY 和 QINIU_SECRET_KEY"
exit 1
fi
# 检查files目录是否存在
if [[ ! -d "files" ]]; then
echo "错误: files目录不存在"
exit 1
fi
# 生成带时间戳的文件名
TIMESTAMP=$(date +"%Y%m%d_%H%M%S")
ARCHIVE_NAME="files_${TIMESTAMP}.tar.xz"
echo "正在压缩files目录(使用xz最高压缩)..."
# 使用tar进行最大压缩
# -cJf: 创建xz压缩文件(最高压缩率)
# --exclude: 排除不需要的文件
tar -cJf "$ARCHIVE_NAME" \
--exclude='._*' \
files/
# 获取压缩后的文件大小
FILE_SIZE=$(ls -lh "$ARCHIVE_NAME" | awk '{print $5}')
echo "压缩完成: $ARCHIVE_NAME (大小: $FILE_SIZE)"
# 文件已经使用xz压缩,无需额外处理
echo ""
echo "正在上传到七牛云..."
# 调用上传脚本
if [[ -f "./upload_to_qiniu.sh" ]]; then
./upload_to_qiniu.sh "$ARCHIVE_NAME"
# 从临时文件读取下载地址
if [[ -f "/tmp/qiniu_upload_url.txt" ]]; then
DOWNLOAD_URL=$(cat /tmp/qiniu_upload_url.txt)
# 写入下载地址到files_download.txt
echo "$DOWNLOAD_URL" > files_download.txt
echo ""
echo "=================================="
echo "上传成功!"
echo "文件名: $ARCHIVE_NAME"
echo "下载地址已保存到: files_download.txt"
echo "下载地址: $DOWNLOAD_URL"
echo "=================================="
# 清理临时文件
rm -f /tmp/qiniu_upload_url.txt
else
echo "警告: 无法获取下载地址"
fi
else
echo "错误: upload_to_qiniu.sh 脚本不存在"
exit 1
fi
# 询问是否删除本地压缩文件
echo "remove $ARCHIVE_NAME"
rm "$ARCHIVE_NAME"
exit 0