每日备份 2026-06-10 12:57:13
This commit is contained in:
1 parent
fda2ccb8c2
commit
3d2e638c6a
244 files changed
+58890
-3
No files matched your search
Executable
+80
@@ -0,0 +1,80 @@
|
||||
#!/bin/bash
|
||||
# ============================================================================
|
||||
# 定时后台学习 - crontab 管理
|
||||
# ============================================================================
|
||||
|
||||
# 添加定时任务
|
||||
add_cron() {
|
||||
echo "添加定时学习任务..."
|
||||
|
||||
# 青龙:每小时学习1轮
|
||||
(crontab -l 2>/dev/null | grep -v "qinglong-auto-learning"; echo "0 * * * * /root/.openclaw/scripts/auto-learning.sh 1 >> /var/log/openclaw/sleep-learning/qinglong-cron.log 2>&1") | crontab -
|
||||
|
||||
# 守护者:每2小时学习1轮
|
||||
(crontab -l 2>/dev/null | grep -v "guardian-auto-learning"; echo "0 */2 * * * /root/.openclaw/scripts/auto-learning.sh 1 >> /var/log/openclaw/sleep-learning/guardian-cron.log 2>&1") | crontab -
|
||||
|
||||
echo "✅ 定时任务已添加"
|
||||
}
|
||||
|
||||
# 移除定时任务
|
||||
remove_cron() {
|
||||
echo "移除定时学习任务..."
|
||||
crontab -l 2>/dev/null | grep -v "auto-learning" | crontab -
|
||||
echo "✅ 已移除"
|
||||
}
|
||||
|
||||
# 立即触发学习(不等待cron)
|
||||
trigger_now() {
|
||||
local robot="${1:-all}"
|
||||
|
||||
if [ "$robot" = "qinglong" ] || [ "$robot" = "all" ]; then
|
||||
echo "🚀 立即触发青龙学习..."
|
||||
nohup /root/.openclaw/scripts/auto-learning.sh 1 > /tmp/qinglong-trigger.log 2>&1 &
|
||||
echo "青龙 PID: $!"
|
||||
fi
|
||||
|
||||
if [ "$robot" = "guardian" ] || [ "$robot" = "all" ]; then
|
||||
echo "🚀 立即触发守护者学习..."
|
||||
nohup /root/.openclaw/scripts/auto-learning.sh 1 > /tmp/guardian-trigger.log 2>&1 &
|
||||
echo "守护者 PID: $!"
|
||||
fi
|
||||
}
|
||||
|
||||
# 查看cron状态
|
||||
status() {
|
||||
echo "╔════════════════════════════════════════════════════╗"
|
||||
echo "║ 定时学习任务状态 ║"
|
||||
echo "╚════════════════════════════════════════════════════╝"
|
||||
echo ""
|
||||
|
||||
echo "📋 当前 Cron 任务:"
|
||||
crontab -l 2>/dev/null | grep "auto-learning" || echo " 无定时任务"
|
||||
|
||||
echo ""
|
||||
echo "🔄 运行中的学习进程:"
|
||||
ps aux | grep "auto-learning.sh" | grep -v grep || echo " 无运行中的进程"
|
||||
|
||||
echo ""
|
||||
echo "📊 最近学习记录:"
|
||||
echo "青龙: $(tail -3 /var/log/openclaw/sleep-learning/qinglong-cron.log 2>/dev/null | head -1 || echo '无')"
|
||||
echo "守护者: $(tail -3 /var/log/openclaw/sleep-learning/guardian-cron.log 2>/dev/null | head -1 || echo '无')"
|
||||
}
|
||||
|
||||
# 主程序
|
||||
case "$1" in
|
||||
add)
|
||||
add_cron
|
||||
;;
|
||||
remove)
|
||||
remove_cron
|
||||
;;
|
||||
trigger)
|
||||
trigger_now "${2:-all}"
|
||||
;;
|
||||
status)
|
||||
status
|
||||
;;
|
||||
*)
|
||||
echo "用法: $0 {add|remove|trigger [qinglong|guardian]|status}"
|
||||
;;
|
||||
esac
|
||||
Reference in new issue
Block a user