yb 10 ماه پیش
والد
کامیت
10b1dd9ffe
1فایلهای تغییر یافته به همراه79 افزوده شده و 0 حذف شده
  1. 79 0
      bash/run.sh

+ 79 - 0
bash/run.sh

@@ -0,0 +1,79 @@
+#!/bin/bash
+
+# 配置
+SOURCE_DIR="dist-prod"              # 源文件夹
+ZIP_NAME="dc.ifoodme.com.zip"       # 输出的 ZIP 文件名
+TEMP_DIR="/tmp/dc.ifoodme.com"      # 临时目录,用于构建目标结构
+TARGET_DIR="dc.ifoodme.com"         # ZIP 中的目标目录名
+
+# 颜色输出
+RED='\033[0;31m'
+GREEN='\033[0;32m'
+NC='\033[0m' # No Color
+
+# 检查命令是否存在
+command_exists() {
+    command -v "$1" >/dev/null 2>&1
+}
+
+# 检查依赖
+check_dependencies() {
+    for cmd in zip unzip; do
+        if ! command_exists "$cmd"; then
+            echo -e "${RED}错误:需要安装 $cmd${NC}"
+            exit 1
+        fi
+    done
+}
+
+# 检查源文件夹
+check_source() {
+    if [ ! -d "$SOURCE_DIR" ]; then
+        echo -e "${RED}错误:源文件夹 $SOURCE_DIR 不存在${NC}"
+        exit 1
+    fi
+    if [ ! -f "$SOURCE_DIR/index.html" ]; then
+        echo -e "${RED}错误:$SOURCE_DIR 中没有 index.html 文件${NC}"
+        exit 1
+    fi
+}
+
+# 打包
+create_zip() {
+    echo "开始打包..."
+
+    # 创建临时目录并复制文件
+    mkdir -p "$TEMP_DIR"
+    cp -r "$SOURCE_DIR"/* "$TEMP_DIR"
+
+    # 重命名临时目录为目标目录名
+    mv "$TEMP_DIR" "$TARGET_DIR"
+
+    # 打包为 ZIP
+    zip -r "$ZIP_NAME" "$TARGET_DIR" >/dev/null
+    if [ $? -eq 0 ]; then
+        echo -e "${GREEN}打包成功:$ZIP_NAME${NC}"
+    else
+        echo -e "${RED}打包失败${NC}"
+        exit 1
+    fi
+}
+
+# 清理
+cleanup() {
+    echo "清理临时文件..."
+    rm -rf "$TARGET_DIR" test_unzip
+    echo -e "${GREEN}清理完成${NC}"
+}
+
+# 主函数
+main() {
+    check_dependencies
+    check_source
+    create_zip
+    cleanup
+    echo -e "${GREEN}所有任务完成!${NC}"
+}
+
+# 执行
+main