#!/bin/bash

# 定义备份文件名
BACKUP_FILE="Brewfile"

# 功能：执行备份
backup() {
    echo "正在备份..."
    # 备份 Homebrew、Homebrew Cask 和 MAS 安装的程序
    brew bundle dump --describe --force --file="$BACKUP_FILE"
    echo "备份完成，文件保存为 $BACKUP_FILE"
}

# 功能：执行安装
install() {
    echo "正在根据 $BACKUP_FILE 文件安装程序..."
    if [ -f "$BACKUP_FILE" ]; then
        brew bundle --file="$BACKUP_FILE"
        echo "安装完成。"
    else
        echo "错误：备份文件 $BACKUP_FILE 不存在。"
    fi
}

# 主脚本开始
# 检查用户输入
if [ "$#" -ne 1 ]; then
    echo "使用方法：$0 <backup|install>"
    exit 1
fi

# 根据用户选择执行功能
case "$1" in
    backup)
        backup
        ;;
    install)
        install
        ;;
    *)
        echo "无效的选项：$1"
        echo "使用方法：$0 <backup|install>"
        exit 2
        ;;
esac
