在Debian中,你可以使用nohup命令结合cron来实现定时任务
打开终端。
输入crontab -e命令来编辑当前用户的cron任务列表。如果你想为其他用户设置定时任务,请使用sudo crontab -u username -e。
在打开的编辑器中,添加一行新的cron任务。cron任务的格式如下:
* * * * * command-to-be-executed
- - - - -
| | | | |
| | | | ----- Day of week (0 - 7) (Sunday to Saturday; 7 is also Sunday)
| | | ------- Month (1 - 12)
| | --------- Day of month (1 - 31)
| ----------- Hour (0 - 23)
------------- Minute (0 - 59)
command-to-be-executed部分,使用nohup命令来运行你想要定时执行的任务。例如,如果你想要在每天的12:00运行一个名为my_script.sh的脚本,你可以这样写:0 12 * * * nohup /path/to/your/script/my_script.sh > /path/to/output.log 2>&1 &
这里,nohup命令会使得my_script.sh在后台运行,即使你关闭终端也不会中断。>和2>&1将标准输出和错误输出重定向到output.log文件。最后的&符号表示将任务放入后台运行。
crontab -l命令查看当前用户的cron任务列表。注意:在使用nohup命令时,请确保你的脚本具有可执行权限。你可以使用chmod +x /path/to/your/script/my_script.sh命令来添加可执行权限。