#!/bin/bash # 列出定时任务(从 PostgreSQL) set -e DB_URL="${DATABASE_URL}" if [ -z "$DB_URL" ]; then echo "数据库未配置(DATABASE_URL)" exit 0 fi # 使用 psql 查询 psql "$DB_URL" -t -A -F '|' -c " SELECT name, description, enabled, next_run_at, interval_seconds FROM scheduled_tasks ORDER BY name " 2>/dev/null | while IFS='|' read -r name desc enabled next_run interval; do if [ -n "$name" ]; then echo "- $name${desc:+ ($desc)}" echo " 启用: $enabled | 间隔: ${interval}s | 下次: ${next_run:-无}" fi done # 检查是否有任何任务 COUNT=$(psql "$DB_URL" -t -A -c "SELECT count(*) FROM scheduled_tasks" 2>/dev/null || echo "0") if [ "$COUNT" = "0" ] || [ -z "$COUNT" ]; then echo "暂无定时任务" fi