31 lines
939 B
Bash
Executable File
31 lines
939 B
Bash
Executable File
#!/bin/bash
|
|
# ============================================
|
|
# 移除定时备份任务(不删已有备份文件)
|
|
# 用法:./stop.sh
|
|
# ============================================
|
|
|
|
set -euo pipefail
|
|
|
|
CRON_TAG="shanxia2.0-mysql-backup"
|
|
|
|
RED='\033[0;31m'
|
|
GREEN='\033[0;32m'
|
|
YELLOW='\033[1;33m'
|
|
NC='\033[0m'
|
|
|
|
log_info() { echo -e "${GREEN}[INFO]${NC} $1"; }
|
|
log_warn() { echo -e "${YELLOW}[WARN]${NC} $1"; }
|
|
|
|
EXISTING="$(crontab -l 2>/dev/null || true)"
|
|
if ! echo "$EXISTING" | grep -q "${CRON_TAG}"; then
|
|
log_warn "当前 crontab 中没有 ${CRON_TAG} 任务,无需停止"
|
|
exit 0
|
|
fi
|
|
|
|
echo "$EXISTING" | grep -v "${CRON_TAG}" | crontab - || true
|
|
|
|
# 若清空后 crontab 为空,部分系统仍可能留空 crontab,可接受
|
|
log_info "已移除标记为 ${CRON_TAG} 的定时任务"
|
|
log_info "已有备份文件不会删除;需要可手动清理 BACKUP_DIR"
|
|
crontab -l 2>/dev/null || log_warn "当前用户 crontab 已为空"
|