用 crontab 实现开机自动运行脚本

开发「bufpay.com 个人即时到账收款平台」的时候,订单状态和支付二维码的状态如果过期了要实时修改状态,最大效率利用支付二维码。

过期脚本需要开机启动,并且 deamon 运行,有很多办法可以开机运行脚本,比如修改 /etc/rc.local 脚本,或者把程序移动到 /etc/init.d 下面 或者通过 supervisord 都可以。

考虑到因为有其他脚本需要用到 crontab 为了方便一处管理,就通过 crontab 来实现开机启动,只需要用一下指令:

@reboot nohup python /project_path/cron/expire.py >> /project_path/logs/expire.log 2>&1 &

就可以啦,@reboot 表示重启开机的时候运行一次,然后 nohup 是用来让运行的程序忽略 SIGHUP 指令(因为在父程序退出后,所有的子程序会受到 SIGHUP 指令)从而保证运行的程序不退出。最后的 2>&1 & 表示将标准错误输出重定向到 &1 既标准输出里面并且在后台运行,而这里的标准输出定向到了 /project_path/logs/expire.log 这个文件,这样就可以在一个地方查看错误日志和打印日志。


插播广告


阅读更多
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭