个人信息:
UID1
威望:37
金钱:14920
贡献:132
元宝:6827
联系方式:
分享:1
精华:3
听众:0
在线时间:51 小时
最后登录:2025-11-28
|
脚本一跑就停不下来?青龙只管“点火”,不管“灭火”。给它加个运行时长上限,到点自动退出,既防死循环,又省资源。下面三招,按“懒人程度”排序:
① 容器级超时(最懒)
一句话:命令前加 timeout ,到点直接杀。
- timeout 300s node /ql/scripts/xxx.js
复制代码
日志会打印 Killed ,退出码 124,方便通知捕获。
Alpine 先装 coreutils : apk add coreutils
② 脚本内部自检(最通用)
一句话:脚本里自己倒计时,到点 process.exit() 。
JavaScript 示例:
js
- const MAX = 290 * 1000; // 290 秒
- setTimeout(() => {
- console.log('>>> 时长到,自己退场 <<<');
- process.exit(0);
- }, MAX);
复制代码
Python 示例:
python
- import sys, threading
- def quit():
- print('>>> 时长到,自己退场 <<<')
- sys.exit(0)
- threading.Timer(290, quit).start()
复制代码
③ PM2 级(少改青龙配置)
一句话:- pm2 start app.js --kill-timeout 5000
复制代码
适合长期守护进程,但青龙默认参数不易注入,①/② 更香。
✅ 用法小结
面板任务命令写:
bash
- timeout 300s node /ql/scripts/xxx.js
复制代码
或脚本头部加倒计时,零依赖,任何镜像都能用。
限定时长,脚本不再“赖床”!
|
|