一直用crontab的用户级别,也就是crontab -e比较多,但是最近某个程序是用crontab的系统级别来实现,然后想起matomo的任务归档,也有个系统级别的,顺便就都改下记录下。

crontab系统级别:

文件:/etc/crontab

命令方式,需要加用户名,一般系统自带用户名root,或者自己新建一个用户名,比如:

5 * * * * root /usr/local/php/bin/php /wwwroot/matomo/console core:archive --url=https://www.jingxialai.com/ > /backup/matomo-archive.log >/dev/null 2>&1
#用户名是放在时间的后面

crontab用户级别:

  • 使用:crontab -e编辑添加
  • 文件路径:/var/spool/cron/

命令方式不用带用户名就行,比如:

5 * * * * /usr/local/php/bin/php /wwwroot/matomo/console core:archive --url=https://www.jingxialai.com/ >/dev/null 2>&1
#这是常见,普遍的crontab定时任务方式

其他:

为什么要加:>/dev/null 2>&1 这段

其实最简单的理解,就是防止任务输出内容占用过多磁盘,当然标准解释不是这个,不过看标准解释,估计很多人更懵圈。