Linux Crontab编辑器使用指南
要编辑当前用户的定时任务,只需在终端输入crontab -e命令。如果是首次使用,系统会提示选择默认编辑器(如nano、vim等),建议新手选择nano(操作更简单);若需编辑其他用户的任务(需root权限),则使用sudo crontab -u 用户名 -e命令。
Crontab的每一行代表一个定时任务,格式为:
* * * * * 命令
其中,前5个*分别对应分钟(0-59)、小时(0-23)、日期(1-31)、月份(1-12)、星期(0-7,0和7均代表周日),第6个字段为要执行的命令(需使用绝对路径)。
特殊符号用于简化时间设置:
*:任意值(如* * * * *表示每分钟执行一次);,:多个离散值(如0 1,13 * * *表示每天1点和13点执行);-:时间范围(如0 9-18 * * 1-5表示周一到周五9点到18点整点执行);/:间隔频率(如*/5 * * * *表示每5分钟执行一次);@reboot表示系统启动时运行一次,@daily表示每天00:00运行)。Ctrl + O确认保存文件(无需修改文件名),再按Ctrl + X退出编辑器。终端会提示“crontab: installing new crontab”,表示任务已保存并加载。Esc键退出插入模式,输入:wq(保存并退出)或:q!(不保存退出),按Enter确认。crontab -l命令,可显示所有已设置的定时任务。crontab -r;crontab -i -r。sudo crontab -u 用户名 -e(如sudo crontab -u nginx -e编辑nginx用户的任务)。/usr/bin/python3而非python3),建议在脚本内设置环境变量(如PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin);crontab -l查看当前任务;sudo service cron restart;CentOS:sudo systemctl restart crond)。grep CRON /var/log/syslog(Ubuntu/Debian)或tail -f /var/log/cron(CentOS/RHEL)查看执行日志;也可将输出重定向到文件(如* * * * * /path/to/command > /tmp/command.log 2>&1)。