关于linux:有没有包含Cronjob列表的文件?

Is there Any File that contain Cronjob list?

我在网站上有文件读取权限;

是否有基于Linux系统的文件(不是目录列表的文件夹)上有cronjob列表?

我搜索并找到了/etc/crontab,但这里没有任何命令。

1
2
3
4
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
HOME=/

有关详细信息,请参阅man 5 crontab

1
2
3
4
5
6
7
8
Example of job definition:
.---------------- minute (0 - 59)
|  .------------- hour (0 - 23)
|  |  .---------- day of month (1 - 31)
|  |  |  .------- month (1 - 12) OR jan,feb,mar,apr ...
|  |  |  |  .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
|  |  |  |  |
*  *  *  *  * user-name command to be executed

cronjob命令文件有什么替代方案吗?

(或者/etc/crontab不是正确的文件?)


是的,您的crontab(可能)存储在一个文件中 - 但是没有充分的理由关心它。

在我的系统上,该文件是/var/spool/cron/crontabs/kst,其中kst是我的用户名。根据您的系统(当然还有您的用户名),您的可能会有所不同。

我从crontab(1)手册页(man crontabFILES部分)中获取了此信息。

除了root用户之外,该文件是不可读的,如果你做的事情取决于该文件的位置,那你几乎肯定做错了什么。在我的系统上,该文件的第一行是:

1
# DO NOT EDIT THIS FILE - edit the master and reinstall.

您应该使用crontab命令来管理您的crontab。它将允许您间接编辑该文件,它将管理系统,以便它知道何时更新。如果您自己手动修改它,您可能只会造成一团糟。

使用crontab -l查看当前的crontab。

您可以使用crontab -e编辑crontab(它会调用您的默认文本编辑器)。就个人而言,我避免使用crontab -e。相反,我将crontab的副本保存在一个单独的文件中,由源控制系统管理,然后使用crontab filename进行安装。

/etc/crontab文件是系统crontab,它使用不同的语法;它在每行上有第6个字段,指定用于执行命令的用户帐户。 (对于个人crontab,这不是必需的,因为该命令将由crontab的所有者执行。)通常有许多系统crontab文件;如果你很好奇,请查看以下文件和目录(这些文件和目录可能存在或可能不存在于您的系统中):

  • /etc/crontab
  • /etc/cron.hourly/*
  • /etc/cron.daily/*
  • /etc/cron.weekly/*
  • /etc/cron.monthly/*
  • /etc/cron.d/*