計劃任務

    計劃任務分爲臨時性和週期性。

一、臨時性計劃任務

一般使用at命令,常用方法:

1、at 時間,例如二天後執行復制/etc/passwd文件到/root目錄下:

[root@localhost ~]# at now +2days
at> cp /etc/passwd /root/
at> <EOT>
job 8 at Mon Dec 21 15:10:00 2015
[root@localhost ~]# at -l
8    Mon Dec 21 15:10:00 2015 a root

也可以使用具體時間來執行計劃任務:

[root@localhost ~]# at 15:12 2015-12-21
at> cp /etc/passwd /root/
at> <EOT>
job 12 at Mon Dec 21 15:12:00 2015

2、查看at計劃任務:at -l 或 ls -a /var/spool/at/*(at命令會在/var/spool/at目錄下生成腳本)
[root@localhost ~]# at -l
8    Mon Dec 21 15:10:00 2015 a root
9    Mon Dec 21 15:11:00 2015 a root
12    Mon Dec 21 15:12:00 2015 a root

[root@localhost ~]# ls -la /var/spool/at/*
-rwx------. 1 root   root   3133 12月 19 15:11 /var/spool/at/a000080170ed6e
-rwx------. 1 root   root   3111 12月 19 15:15 /var/spool/at/a000090170ed6f
-rwx------. 1 root   root   3133 12月 19 15:16 /var/spool/at/a0000c0170ed70

可以通過vim或cat查看/var/spool/at目錄下的計劃任務腳本。

3、計劃任務取消:atrm

例如取消剛纔下達的2個計劃任務(先用at -l 查看剛纔下達的任務ID)

[root@localhost ~]# at -l
8    Mon Dec 21 15:10:00 2015 a root
9    Mon Dec 21 15:11:00 2015 a root
12    Mon Dec 21 15:12:00 2015 a root

[root@localhost ~]# atrm 8 12
[root@localhost ~]# at -l
9    Mon Dec 21 15:11:00 2015 a root

二、週期性計劃任務

1、計劃任務配置文件:/etc/crontab

[root@localhost ~]# vim /etc/crontab
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root

# For details see man 4 crontabs

# 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

配置文件中5個星號按順序表示分時日月周(*號之間有空格)

每個取值範圍:

    分:0-59

    小時:0-23

    日:1-31

    月:1-12

    周:0-7  ( 0 、7 都是週日)

例:

    1)9,18,22這幾天的3點,開始執行備份腳本   /root/backup.sh

        0   3  9,18,22  *   *   /root/backup.sh

 

    2)每月9-18日,這幾天,3:00執行

        0   3   9-18  *  *    /root/backup.sh

 

    3)每5分鐘,執行一次

        */5   *  *    *   * /root/backup.sh

2、crontab  命令常用參數語法

    1)、下達計劃任務:crontab -e

    2)、查看計劃任務:crontab -l

    3)、刪除計劃任務:crontab -r

    4)、給用戶指定任務(下達、查看、刪除):crontab -u username [-e|-l|-r]

注:使用crontab命令下達的計劃任務在/var/spool/cron目錄下生成腳本,並不會寫入到/etc/crontab腳本中

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章