您的位置:

CentOS计划任务详解

一、CentOS计划任务文件

CentOS计划任务文件是以crontab格式存储,可通过编辑该文件来添加、删除、修改计划任务。该文件在每个用户的home目录下,以该用户的用户名命名。下面是一个计划任务文件的示例:

# Edit this file to introduce tasks to be run by cron.
# 
# Each task to run has to be defined through a single line
# indicating with different fields when the task will be run
# and what command to run for the task
# 
# To define the time you can provide concrete values for
# minute (m), hour (h), day of month (dom), month (mon),
# and day of week (dow) or use '*' in these fields (for 'any').# Notice that tasks will be started based on the cron's system
# daemon's notion of time and timezones.
# 
# Output of the crontab jobs (including errors) is sent through
# email to the user the crontab file belongs to (unless redirected).
#
# For example, you can run a backup of all your user accounts
# at 5 a.m every week with:
# 0 5 * * 1 tar -zcf /var/backups/home.tgz /home/
#
# For more information see the manual pages of crontab(5) and cron(8)
#
# m h  dom mon dow   command
*/5 * * * * /usr/local/bin/python /home/user/myscript.py
0 0 * * * /sbin/shutdown now

以上计划任务文件示例中有两条计划任务,分别表示每隔五分钟执行一个Python脚本,以及每天晚上0点关机。每条计划任务的具体说明如下:

1、*/5 * * * * /usr/local/bin/python /home/user/myscript.py

该计划任务的含义是每隔5分钟,在任何一个月份,任何一个星期的任何一天任何一分钟内,执行“/usr/local/bin/python /home/user/myscript.py”这个命令。

2、0 0 * * * /sbin/shutdown now

该计划任务的含义是:在每天的0点0分,关机。

二、CentOS计划任务命令

在添加、删除、修改计划任务时,需要使用以下5个命令:

1、crontab -e:编辑计划任务文件

2、crontab -l:查看计划任务列表

3、crontab -r:删除计划任务

4、crontab -u [用户名] -e:以指定用户身份编辑计划任务文件

5、crontab -u [用户名] -l:以指定用户身份查看计划任务列表

三、CentOS计划任务列表

通过crontab -l命令可以查看计划任务列表。在该列表中,每一行都以空格分隔,共分为6个字段,分别表示分钟、小时、每月第几天、月份、星期几,以及要执行的命令。以下是一个计划任务列表的示例:

# m h  dom mon dow   command
*/5 * * * * /usr/local/bin/python /home/user/myscript.py
0 0 * * * /sbin/shutdown now

以上计划任务列表示例中有两条计划任务,与之前的计划任务文件示例相同。

四、CentOS计划任务不执行

如果有计划任务不想执行,可以注释掉该计划任务的那一行。注释符号为“#”,添加到该计划任务的开头即可。例如:

# m h  dom mon dow   command
# */5 * * * * /usr/local/bin/python /home/user/myscript.py
0 0 * * * /sbin/shutdown now

在以上计划任务列表中,原本的第一条计划任务已被注释掉,不再执行。

五、CentOS计划任务7点关机

如果想在每天的7点关机,需要添加以下计划任务:

0 7 * * * /sbin/shutdown now

以上计划任务的含义是每天的7点,关机。

六、CentOS查看计划任务

如果想只查看某个用户的计划任务,可以使用crontab -u [用户名] -l命令。例如,查看用户「user」的计划任务:

crontab -u user -l