在 CentOS 系统中,你可以使用 nohup
命令结合 cron
来实现定时任务
-
打开终端。
-
输入
crontab -e
命令来编辑当前用户的cron
任务列表。如果你想以其他用户身份运行定时任务,请使用sudo crontab -e -u username
。 -
在打开的
cron
配置文件中,按照以下格式添加定时任务:
* * * * * nohup /path/to/your/script.sh > /path/to/output.log 2>&1 &
这里的五个星号分别表示分钟(0-59)、小时(0-23)、月份中的某天(1-31)、月份(1-12)和星期中的某天(0-7,其中0和7都表示星期日)。你需要根据实际需求替换这些星号。
/path/to/your/script.sh
是你要执行的脚本的路径,/path/to/output.log
是你希望将脚本输出重定向到的日志文件路径。
2>&1
表示将标准错误(2)重定向到标准输出(1),&
表示将任务放入后台运行。
例如,如果你希望每天凌晨 1 点执行一个名为 backup.sh
的脚本,并将输出重定向到 backup.log
文件,你可以添加以下行:
0 1 * * * nohup /path/to/backup.sh > /path/to/backup.log 2>&1 &
- 保存并关闭
cron
配置文件。现在,你的定时任务已经设置好了。
注意:确保你的脚本具有可执行权限。你可以使用 chmod +x /path/to/your/script.sh
命令为脚本添加可执行权限。