linux命令Crontab定時任務執行個體

來源:互聯網
上載者:User

在Linux伺服器部署定時任務,常要用到Crontab,主要用於網站定時指令碼的執行,系統維護、備份的定時任務等,本文介紹Crontab部署任務的方式和命令


Linux系統使用Crontab跑計劃任務,也就是定時任務,基本的文法格式是:

2 */1 * * * /data/vhosts/example/cronjob/_run_1_hour.sh

而sh指令檔就是具體的執行檔案,如用PHP運行一個或多個指令碼:

Shell

#!/bin/sh
cd /data/vhosts/web/cronjob
RUNPATH=/data/vhosts/web/cronjob
PHPEXEC=/usr/local/php-fcgi/bin/php

# 每小時運行一次此指令碼

$PHPEXEC $RUNPATH/test_crontab.php

#!/bin/sh
cd /data/vhosts/web/cronjob
RUNPATH=/data/vhosts/web/cronjob
PHPEXEC=/usr/local/php-fcgi/bin/php
 
# 每小時運行一次此指令碼
 
$PHPEXEC $RUNPATH/test_crontab.php

Crontab命令的格式說明如下:

Crontab

minute: 表示分鐘,可以是從0到59之間的任何整數。

hour:表示小時,可以是從0到23之間的任何整數。

day:表示日期,可以是從1到31之間的任何整數。

month:表示月份,可以是從1到12之間的任何整數。

week:表示星期幾,可以是從0到7之間的任何整數,這裡的0或7代表星期日。

command:要執行的命令,可以是系統命令,也可以是自己編寫的指令檔。

幾個有用的Crontab命令

crontab -l,列出所有的計劃任務。

crontab -e,編輯計劃任務,可通過此命令添加計劃任務。

如,每分鐘執行一次:

0 */1 * * * /data/vhosts/web/cronjob/_run_1_hour.sh >> /data/vhosts/web/log/_run_1_hour_stop_tips.log

這樣寫還可以記錄指令碼輸入的內容到記錄檔。如果你需要追加而不是覆蓋,可以用 >>代替>

/etc/crontab、/etc/cron.deny 、 /etc/cron.allow檔案介紹

系統調度的任務一般存放在/etc/crontab這個檔案下,裡面存放了一些系統啟動並執行發送器,通過命令我們可以看一下裡面的內容:


[root@xiaoluo ~]# cat /etc/crontab
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
HOME=/

# 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

這些任務都會是系統在運行起來後自動進行調度的。同時在/etc目錄下還存放了/etc/cron.deny 和 /etc/cron.allow 檔案

/etc/cron.deny 表示不能使用crontab 命令的使用者

/etc/cron.allow 表示能使用crontab的使用者。

如果兩個檔案同時存在,那麼/etc/cron.allow 優先。

如果兩個檔案都不存在,那麼只有root使用者可以安排作業。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.