#!/usr/bin/env bash # 一键恢复 uploads 图片 # # 用法: # bash deploy/restore-uploads.sh --list # bash deploy/restore-uploads.sh --latest # bash deploy/restore-uploads.sh --restore=20260923_235800 set -euo pipefail DEPLOY_PATH="${DEPLOY_PATH:-$(cd "$(dirname "$0")/.." && pwd)}" PHP_BIN="${PHP_BIN:-$(command -v php || true)}" SCRIPT="${DEPLOY_PATH}/deploy/restore-uploads.php" if [[ -z "$PHP_BIN" || ! -x "$PHP_BIN" ]]; then echo "ERROR: 找不到可执行的 PHP" exit 1 fi ARGS=() for arg in "$@"; do case "$arg" in --latest) ARGS+=("--restore=latest") ;; --list) ARGS+=("--list") ;; *) ARGS+=("$arg") ;; esac done if [[ ${#ARGS[@]} -eq 0 ]]; then echo "用法:" echo " bash deploy/restore-uploads.sh --list" echo " bash deploy/restore-uploads.sh --latest" echo " bash deploy/restore-uploads.sh --restore=20260923_235800" exit 1 fi echo "项目: ${DEPLOY_PATH}" echo "" exec "$PHP_BIN" "$SCRIPT" "${ARGS[@]}"