多多色-多人伦交性欧美在线观看-多人伦精品一区二区三区视频-多色视频-免费黄色视屏网站-免费黄色在线

國內(nèi)最全IT社區(qū)平臺 聯(lián)系我們 | 收藏本站
阿里云優(yōu)惠2
您當(dāng)前位置:首頁 > 服務(wù)器 > Linux 計劃任務(wù)布控

Linux 計劃任務(wù)布控

來源:程序員人生   發(fā)布時間:2016-06-17 08:26:47 閱讀次數(shù):4493次

fileclear.sh

復(fù)制代碼
tamcdir=${HOME}/ora/user_projects/domains/tamc
cd ${tamcdir}
echo rm -f `ls heapdump*.phd`
rm -f heapdump*.phd
echo rm -f `ls javacore*.txt`
rm -f javacore*.txt
echo rm -f `ls Snap*.trc`
rm -f Snap*.trc
cd bin
echo cp /dev/null nuhup.out
cp /dev/null nuhup.out
cd ${tamcdir}/pxbak
echo rm -rf `ls 20*`
rm -rf 20*
cd ${tamcdir}/webapps/tamcx/fileLoad
echo rm -f `find /weblogic/ora/user_projects/domains/tamc/webapps/tamcx/fileLoad/ -mtime +1`
find /weblogic/ora/user_projects/domains/tamc/webapps/tamcx/fileLoad/ -mtime +1 -exec rm -f {} \;
復(fù)制代碼

task.crontab

#web服務(wù)端日志、臨時文件清算
10 1 * * * ksh $HOME/tools/clearweblogic.sh >>/weblogic/ora/user_projects/domains/tamc/webapps/tamcx/log/crontab.log 2>>/weblogic/ora/user_projects/domains/tamc/webapps/tamcx/log/crontab.log

 

task.null.crontab是1個沒有內(nèi)容的空文件

開啟定時任務(wù) 

crontab /weblogic/tools/task.crontab

停止定時任務(wù)

crontab /weblogic/tools/task.null.crontab

 

crontab [-u username] [-l|-e|-r]

參數(shù):

-u: 只有root才能進行這個任務(wù),也即幫其他用戶新建/刪除crontab工作調(diào)度;

-e: 編輯crontab 的工作內(nèi)容;

-l: 查閱crontab的工作內(nèi)容;

-r: 刪除所有的crontab的工作內(nèi)容,若僅要刪除1項,請用-e去編輯。

 

范例1:用dmtsai的身份在每天的12:00發(fā)信給自己

crontab -e

#此時會進入vi的編輯界面讓你編輯工作。注意到,每項工作都是1行。

0    12   *   *   *   mail dmtsai -s "at 12:00" < /home/dmtsai/.bashrc
#分  時   日   月  周  |《==============命令行=======================》|

 

代表意義 分鐘 小時 日期 月份 命令
數(shù)字范圍 0~59 0~23 1~31 1~12 0~7 就命令啊

周的數(shù)字為0或7時,都代表“星期天”的意思。另外,還有1些輔助的字符,大概有下面這些:

特殊字符   代表意義
*(星號) 代表任什么時候刻都接受的意思。舉例來講,范例1內(nèi)那個日、月、周都是*,就代表著不論何月、何日的礼拜幾的12:00都履行后續(xù)命令的意思。
,(逗號)

代表分隔時段的意思。舉例來講,如果要履行的工作是3:00與6:00時,就會是:

0 3,6 * * * command

時間還是有5列,不過第2列是 3,6 ,代表3與6都適用

-(減號)

 代表1段時間范圍內(nèi),舉例來講,8點到12點之間的每小時的20分都進行1項工作:

20 8⑴2 * * * command

仔細看到第2列變成8⑴2.代表 8,9,10,11,12 都適用的意思

/n(斜線)

 那個n代表數(shù)字,即是每隔n單位間隔的意思,例如每5分鐘進行1次,則:

*/5 * * * * command

用*與/5來搭配,也能夠?qū)懗?⑸9/5,意思相同

 

為當(dāng)前用戶創(chuàng)建cron服務(wù)

1.  鍵入 crontab  -e 編輯crontab服務(wù)文件

      例如 文件內(nèi)容以下:

*/2 * * * * /bin/sh /home/admin/jiaoben/buy/deleteFile.sh 

     保存文件并并退出

 */2 * * * * /bin/sh /home/admin/jiaoben/buy/deleteFile.sh

    */2 * * * * 通過這段字段可以設(shè)定甚么時候履行腳本

      /bin/sh /home/admin/jiaoben/buy/deleteFile.sh 這1字段可以設(shè)定你要履行的腳本,這里要注意1下bin/sh 是指運行  腳本的命令  后面1段時指腳本寄存的路徑

 

2. 查看該用戶下的crontab服務(wù)是不是創(chuàng)建成功, 用 crontab  -l 命令  

 

3. 啟動crontab服務(wù) 

      1般啟動服務(wù)用  /sbin/service crond start 若是根用戶的cron服務(wù)可以用 sudo service crond start, 這里還是要注意  下 不同版本linux系統(tǒng)啟動的服務(wù)的命令也不同 ,像我的虛擬機里只需用 sudo service cron restart 便可,若是在根用下直接鍵入service cron start就可以啟動服務(wù)

 

4. 查看服務(wù)是不是已運行用 ps -ax | grep cron 

5. crontab命令

      cron服務(wù)提供crontab命令來設(shè)定cron服務(wù)的,以下是這個命令的1些參數(shù)與說明:

      crontab -u //設(shè)定某個用戶的cron服務(wù),1般root用戶在履行這個命令的時候需要此參數(shù)  
  crontab -l //列出某個用戶cron服務(wù)的詳細內(nèi)容
  crontab -r //刪除沒個用戶的cron服務(wù)
  crontab -e //編輯某個用戶的cron服務(wù)
  比如說root查看自己的cron設(shè)置:crontab -u root -l
  再例如,root想刪除fred的cron設(shè)置:crontab -u fred -r
  在編輯cron服務(wù)時,編輯的內(nèi)容有1些格式和約定,輸入:crontab -u root -e
  進入vi編輯模式,編輯的內(nèi)容1定要符合下面的格式:*/1 * * * * ls >> /tmp/ls.txt
        任務(wù)調(diào)度的crond常駐命令
        crond 是linux用來定期履行程序的命令。當(dāng)安裝完成操作系統(tǒng)以后,默許便會啟動此  

       任務(wù)調(diào)度命令。crond命令每分鍾會定期檢查是不是有要履行的工作,如果有要履行的工

       作便會自動履行該工作。

 

6. crontab命令選項:

     -u指定1個用戶

     -l列出某個用戶的任務(wù)計劃

     -r刪除某個用戶的任務(wù)

     -e編輯某個用戶的任務(wù)

7. cron文件語法:

      分     小時    日       月       星期     命令

      0⑸9   0⑵3   1⑶1   1⑴2     0⑹     command     (取值范圍,0表示周日1般1行對應(yīng)1個任務(wù))

     記住幾個特殊符號的含義:

         “*”代表取值范圍內(nèi)的數(shù)字,
         “/”代表”每”,
         “-”代表從某個數(shù)字到某個數(shù)字,
         “,”分開幾個離散的數(shù)字

8. 任務(wù)調(diào)度設(shè)置文件的寫法
      可用crontab -e命令來編輯,編輯的是/var/spool/cron下對利用戶的cron文件,也能夠直接修改/etc/crontab文件
     具體格式以下:
      Minute Hour Day Month Dayofweek   command
      分鐘     小時   天     月       天每星期       命令
     每一個字段代表的含義以下:
     Minute             每一個小時的第幾分鐘履行該任務(wù)
     Hour               每天的第幾個小時履行該任務(wù)
     Day                 每個月的第幾天履行該任務(wù)
     Month             每一年的第幾個月履行該任務(wù)
     DayOfWeek     每周的第幾天履行該任務(wù)
     Command       指定要履行的程序
     在這些字段里,除“Command”是每次都必須指定的字段之外,其它字段皆為可選

    字段,可視需要決定。對不指定的字段,要用“*”來彌補其位置。
    舉例以下:   

 

復(fù)制代碼
5      *       *         *     *     ls             指定每小時的第5分鐘履行1次ls命令
30     5       *         *     *     ls             指定每天的 5:30 履行l(wèi)s命令 
30     7       8         *     *     ls             指定每個月8號的7:30分履行l(wèi)s命令
30     5       8         6     *     ls             指定每一年的6月8日5:30履行l(wèi)s命令 
30     6       *         *     0     ls             指定每星期日的6:30履行l(wèi)s命令[注:0表示星期天,1表示星期1, 以此類推,
                                     也能夠用英文來表示,sun表示星期天,mon表示星期1等。]
30     3       10,20     *     *     ls             每個月10號及20號的3:30履行l(wèi)s命令[注:“,”用來連接多個不連續(xù)的時段]
25     8⑴1    *         *     *     ls             每天8⑴1點的第25分鐘履行l(wèi)s命令[注:“-”用來連接連續(xù)的時段]
*/15   *       *         *     *     ls             每15分鐘履行1次ls命令 [即每一個小時的第0 15 30 45 60分鐘履行l(wèi)s命令 ]
30     6       */10      *     *     ls             每月中,每隔10天6:30履行1次ls命令[即每個月的1、11、21、31日是的6:30履行1次ls 命令。 ]
                                              每天7:50以root 身份履行/etc/cron.daily目錄中的所有可履行文件
50     7       *         *     *     root     run-parts     /etc/cron.daily   [ 注:run-parts參數(shù)表示,履行后面目錄中的所有可履行文件。 ]
復(fù)制代碼

 

9. 新增調(diào)度任務(wù)

     新增調(diào)度任務(wù)可用兩種方法:
       1)、在命令行輸入: crontab -e 然后添加相應(yīng)的任務(wù),wq存盤退出。
        2)、直接編輯/etc/crontab 文件,即vi /etc/crontab,添加相應(yīng)的任務(wù)。

10. 查看調(diào)度任務(wù)
        crontab -l //列出當(dāng)前的所有調(diào)度任務(wù)
        crontab -l -u jp   //列出用戶jp的所有調(diào)度任務(wù)

11. 刪除任務(wù)調(diào)度工作
         crontab -r   //刪除所有任務(wù)調(diào)度工作

12. 任務(wù)調(diào)度履行結(jié)果的轉(zhuǎn)向
       例1:每天5:30履行l(wèi)s命令,并把結(jié)果輸出到/jp/test文件中
            30 5 * * * ls >/jp/test 2>&1
            注:2>&1 表示履行結(jié)果及毛病信息。
      編輯/etc/crontab 文件配置cron  

     cron服務(wù)每分鐘不但要讀1次/var/spool/cron內(nèi)的所有文件,還需要讀1次 /etc/crontab,因此我們配置這個文件也能應(yīng)用cron服務(wù)做1些事情。用crontab配置是針對某個用戶的,而編輯/etc/crontab是針對系統(tǒng)的任務(wù)。此文件的文件格式是:  

  SHELL=/bin/bash  

  PATH=/sbin:/bin:/usr/sbin:/usr/bin 

  MAILTO=root //如果出現(xiàn)毛病,或有數(shù)據(jù)輸出,數(shù)據(jù)作為郵件發(fā)給這個帳號  

  HOME=/ //使用者運行的路徑,這里是根目錄  
  # run-parts  

01   *   *   *   *     root run-parts /etc/cron.hourly         //每小時履行/etc/cron.hourly內(nèi)的腳本  
02   4   *   *   *     root run-parts /etc/cron.daily           //每天履行/etc/cron.daily內(nèi)的腳本  
22   4   *   *   0     root run-parts /etc/cron.weekly         //每星期履行 /etc/cron.weekly內(nèi)的腳本  
42   4   1   *   *     root run-parts /etc/cron.monthly       //每個月去履行/etc/cron.monthly內(nèi)的腳本  


  大家注意”run-parts”這個參數(shù)了,如果去掉這個參數(shù)的話,后面就能夠?qū)懸\行的某個腳本名,而不是文件夾名了

    例如:

     1) 在命令行輸入: crontab -e 然后添加相應(yīng)的任務(wù),wq存盤退出。

      2)直接編輯/etc/crontab 文件,即vi /etc/crontab,添加相應(yīng)的任務(wù)

11 2 21 10 * rm -rf /mnt/fb  

在UNIX下怎樣實現(xiàn)和Windows下“計劃任務(wù)”1樣的功能
$crontab -e 編輯腳本
$crontab -l 觀察腳本  
用$crontab -e 編輯腳本,加入以下行
:分 小時 星期 月 命令  
Linux下crontab命令的用法
任務(wù)調(diào)度的crond常駐命令
crond 是linux用來定期履行程序的命令。當(dāng)安裝完成操作系統(tǒng)以后,默許便會啟動此任務(wù)調(diào)度命令。crond命令每分鍾會定期檢查是不是有要履行的工作,如果有要履行的工作便會自動履行該工作。而linux任務(wù)調(diào)度的工作主要分為以下兩類:
1、系統(tǒng)履行的工作:系統(tǒng)周期性所要履行的工作,如備份系統(tǒng)數(shù)據(jù)、清算緩存
2、個人履行的工作:某個用戶定期要做的工作,例如每隔10分鐘檢查郵件服務(wù)器是不是有新信,這些工作可由每一個用戶自行設(shè)置
3、Crontab是UNIX系統(tǒng)下的定時任務(wù)觸發(fā)器,其使用者的權(quán)限記載在以下兩個文件中:文件含義
/etc/cron.deny 該文件中所列的用戶不允許使用Crontab命令
/etc/cron.allow 該文件中所列的用戶允許使用Crontab命令
/var/spool/cron/ 是所有用戶的crontab文件
/var/spool/cron/crontabs

4、Crontab命令的格式為:crontab –l|-r|-e|-i [username],

其參數(shù)含義如表1: 參數(shù)名稱   含義    示例
-l 顯示用戶的Crontab文件的內(nèi)容
crontabl –l 

-i 刪除用戶的Crontab文件前給提示
crontabl -ri 

-r 
從Crontab目錄中刪除用戶的Crontab文件

crontabl -r 
-e 

編輯用戶的Crontab文件
crontabl -e 

5、用戶所建立的Crontab文件存于/var/spool/cron中,其文件名與用戶名1致。它的格式共分為6段,前5段為時間設(shè)定段,第6段為所要履行的命令段,格式以下:* * * * * 
其時間段的含義如表2: 段        含義        取值范圍
第1段   代表分鐘        0—59 
第2段   代表小時        0—23 
第3段   代表日期        1—31 
第4段   代表月份        1—12 
第5段   代表星期幾   0代表星期日
名稱 : crontab 
使用權(quán)限 : 所有使用者
使用方式 : 
crontab [ -u user ] file 
crontab [ -u user ] { -l | -r | -e } 
說明 : 
crontab 是用來讓使用者在固定時間或固定間隔履行程序之用,換句話說,也就是類似使用者的時程表。-u user 是指設(shè)定指定 user 的時程表,這個條件是你必須要有其權(quán)限(比如說是 root)才能夠指定他人的時程表。如果不使用 -u user 的話,就是表示設(shè)定自己的時程表。
餐數(shù) : 
-e : 履行文字編輯器來設(shè)定時程表,內(nèi)定的文字編輯器是 VI,如果你想用別的文字編輯器,則請先設(shè)定 VISUAL 環(huán)境變數(shù)來指定使用那個文字編輯器(比如說 setenv VISUAL joe) 

-r : 刪除目前的時程表
-l : 列出目前的時程表
時程表的格式以下 : 
f1 f2 f3 f4 f5 program 
其中 f1 是表示分鐘,f2 表示小時,f3 表示1個月份中的第幾日,f4 表示月份,f5 表示1個星期中的第幾天。program 表示要履行的程序。
當(dāng) f1 為 * 時表示每分鐘都要履行 program,f2 為 * 時表示每小時都要履行程序,其馀類推
當(dāng) f1 為 a-b 時表示從第 a 分鐘到第 b 分鐘這段時間內(nèi)要履行,f2 為 a-b 時表示從第 a 到第 b 小時都要履行,其馀類推
當(dāng) f1 為 */n 時表示每 n 分鐘個時間間隔履行1次,f2 為 */n 表示每 n 小時個時間間隔履行1次,其馀類推
當(dāng) f1 為 a, b, c,... 時表示第 a, b, c,... 分鐘要履行,f2 為 a, b, c,... 時表示第 a, b, c...個小時要履行,其馀類推

使用者也能夠?qū)⑺械脑O(shè)定先寄存在檔案 file 中,用 crontab file 的方式來設(shè)定時程表。 例子 : 
每個月每天每小時的第 0 分鐘履行1次 /bin/ls : 

0    7    *    *    *    /bin/ls 

在 12 月內(nèi), 每天的早上 6 點到 12 點中,每隔 20 分鐘履行1次 /usr/bin/backup : 

0  6⑴2/3  *  12  *  /usr/bin/backup 

周1到周5每天下午 5:00 寄1封信給 alex@domain.name : 

0  17  *  *  1⑸  mail -s "hi" alex@domain.name   /dev/null 2>&1

 便可

例:如果用戶的Crontab文件的內(nèi)容是:29 19 * * * echo its dinner time,則系統(tǒng)每天的19:29顯示‘its dinner time’
示例(創(chuàng)建1個cron全進程,每分鐘都會在test.txt里輸入當(dāng)前時間):
1.     以普通用戶登錄linux系統(tǒng)(我用的是CentOS4.1) 
2.     $crontab –e
說明:系統(tǒng)默許的編輯器是VIM,如果不是請加上以下shell:
$EDITOR=vi
$export EDITOR 
3.     輸入”*/1 * * * * date >> $HOME/test.txt”,save and exit VIM 
4.     $su root 
5.     $cd /etc/init.d 
6.     ./crond restart 

下面看看看幾個具體的例子:

復(fù)制代碼
0   */2  *    *   *   /sbin/service httpd restart   意思是每兩個小時重啟1次apache 
50  7    *    *   *   /sbin/service sshd start   意思是每天7:50開啟ssh服務(wù)
50  22   *    *   *   /sbin/service sshd stop   意思是每天22:50關(guān)閉ssh服務(wù)
0   0    1,15  *   *   fsck /home   每個月1號和15號檢查/home 磁盤
1   *    *    *   *   /home/bruce/backup   每小時的第1分履行 /home/bruce/backup這個文件
00  03   *    *  1⑸  find /home "*.xxx" -mtime +4 -exec rm {} \;   每周1至周53點鐘,在目錄/home中,查找文件名為*.xxx的文件,并刪除4天前的文件。
30  6    */10  *   *   ls   意思是每個月的1、11、21、31日是的6:30履行1次ls命令
復(fù)制代碼

 

linux平臺上如果需要實現(xiàn)任務(wù)調(diào)度功能可以編寫cron腳本來實現(xiàn)。

以某1頻率履行任務(wù)

linux缺省會啟動crond進程,crond進程不需要用戶啟動、關(guān)閉。
crond進程負責(zé)讀取調(diào)度任務(wù)并履行,用戶只需要將相應(yīng)的調(diào)度腳本寫入cron的調(diào)度配置文件中。
cron的調(diào)度文件有以下幾個:

1.   crontab 

2.   cron.d 

3.   cron.daily 

4.   cron.hourly 

5.   cron.monthly 

6.   cron.weekly 

如果用的任務(wù)不是以hourly monthly weekly方式履行,則可以將相應(yīng)的crontab寫入到crontab 或cron.d目錄中。

示例:
每隔1分鐘履行1次腳本 /opt/bin/test-cron.sh 
可以在cron.d新建腳本 echo-date.sh 
內(nèi)容為

*/1  *  *  *  *  root /opt/bin/test-cron.sh

 

在指定的時間運行任務(wù)

也能夠通過at命令來控制在指定的時間運行任務(wù)

如:

at -f test-cron.sh -v 10:25 
其中-f 指定腳本文件, -v 指定運行時間

quote:ea946d690b="lophyxp"]首先用
contab -l &gt;contabs.tmp
導(dǎo)出contab的配置。
然后編輯contabs.tmp文件。以1下格式添加1行:
分鐘 小時 天 月 星期 命令
比如
10 3 * * 0,6 hello
就是每周6、周日的3點10分履行hello程序。
15 4 * * 4⑹ hello
就是從周4到周6的4點15點履行hello程序。
然后用
contab contabs.tmp
命令導(dǎo)入新的配置。
1般不建議直接修改/etc/下的相干配置文件。

啟動cron進程的方法:/etc/init.d/crond start
開機就啟動cron進程的設(shè)置命令:chkconfig --add crond

方法2:

把cron加入到啟動腳本中:

# rc-update add vixie-cron default

crontab -l #查看你的任務(wù)

crontab-e#編輯你的任務(wù)

crontab-r#刪除用戶的crontab的內(nèi)容

實例講授2:

系統(tǒng)cron設(shè)定:/etc/crontab
    通過 /etc/crontab 文件,可以設(shè)定系統(tǒng)定期履行的任務(wù),固然,要想編輯這個文件,得有root權(quán)限

0   7  *  *   *    root    mpg123 ~/wakeup.mp3 

分 時 日 月 周

示例:

0   4   *   *   0  root  emerge --sync && emerge -uD world              #每周日清晨4點,更新系統(tǒng)
0   2   1   *   *  root   rm -f /tmp/*                                    #每個月1號清晨2點,清算/tmp下的文件
0   8   6   5   *  root  mail robin < /home/galeki/happy.txt             #每一年5月6日給robin發(fā)信祝他生日快樂

假設(shè),我想每隔2分鐘就要履行某個命令,或我想在每天的6點、12點、18點履行命令,諸如此類的周期,可以通過 “ / ” 和 “ , ” 來設(shè)置:

*/2  *      *  *  *  root      ...............      #每兩分鐘就履行........ 
0    6,12,18  *  *  *  root      ...............      #每天6點、12點、18點履行........

每兩個小時

0  */2  *  *  *  echo "have a break now." >&gt; /tmp/test.txt

晚上11點到早上8點之間每兩個小時,早上8點

0  23⑺/2,8  *  *  *  echo "have a good dream:)" &gt;&gt; /tmp/test.txt

每月的4號與每一個礼拜的礼拜1到礼拜3的早上11點

0  11  4  *  1⑶  command line

1月1日早上4點

0  4 1 1 * command line

 

 
linux下定時履行任務(wù)的方法 

LINUX中你應(yīng)當(dāng)先輸入crontab -e,然后就會有個vi編輯界面,再輸入0 3 * * 1 /clearigame2內(nèi)容到里面 :wq 保存退出。

 

LINUX中,周期履行的任務(wù)1般由cron這個守護進程來處理[ps -ef|grep cron]。cron讀取1個或多個配置文件,這些配置文件中包括了命令行及其調(diào)用時間。

cron的配置文件稱為“crontab”,是“cron table”的簡寫。

1、cron在3個地方查找配置文件:
1、/var/spool/cron/ 這個目錄下寄存的是每一個用戶包括root的crontab任務(wù),每一個任務(wù)以創(chuàng)建者的名字命名,比如tom建的crontab任務(wù)對應(yīng)的文件就是/var/spool/cron/tom。
1般1個用戶最多只有1個crontab文件。

2、/etc/crontab 這個文件負責(zé)安排由系統(tǒng)管理員制定的保護系統(tǒng)和其他任務(wù)的crontab。

3、/etc/cron.d/ 這個目錄用來寄存任何要履行的crontab文件或腳本。

4、權(quán)限
crontab權(quán)限問題到/var/adm/cron/下1看,文件cron.allow和cron.deny是不是存在
用法以下: 
1、如果兩個文件都不存在,則只有root用戶才能使用crontab命令。 
2、如果cron.allow存在但cron.deny不存在,則只有列在cron.allow文件里的用戶才能使用crontab命令,如果root用戶也不在里面,則root用戶也不能使用crontab。 
3、如果cron.allow不存在, cron.deny存在,則只有列在cron.deny文件里面的用戶不能使用crontab命令,其它用戶都能使用。 
4、如果兩個文件都存在,則列在cron.allow文件中而且沒有列在cron.deny中的用戶可使用crontab,如果兩個文件中都有同1個用戶,
以cron.allow文件里面是不是有該用戶為準,如果cron.allow中有該用戶,則可使用crontab命令。

 

5、cron服務(wù)
  cron是1個linux下 的定時履行工具,可以在無需人工干預(yù)的情況下運行作業(yè)。
  /sbin/service crond start    //啟動服務(wù)
  /sbin/service crond stop     //關(guān)閉服務(wù)
  /sbin/service crond restart  //重啟服務(wù)
  /sbin/service crond reload   //重新載入配置
  /sbin/service crond status   //查看服務(wù)狀態(tài) 

在crontab文件中如何輸入需要履行的命令和時間。該文件中每行都包括6個域,其中前5個域是指定命令被履行的時間,最后1個域是要被履行的命令。
    每一個域之間使用空格或制表符分隔。格式以下: 
  minute hour day-of-month month-of-year day-of-week commands 
    合法值 00⑸9 00⑵3 01⑶1 01⑴2 0⑹ (0 is sunday) commands(代表要履行的腳本)
    除數(shù)字還有幾個個特殊的符號就是"*"、"/"和"-"、",",*代表所有的取值范圍內(nèi)的數(shù)字,"/"代表每的意思,"/5"表示每5個單位,"-"代表從某個數(shù)字到某個數(shù)字,","分開幾個離散的數(shù)字。

幾個例子: 
每天早上6點 

0  6  *  *  *  echo "Good morning." >> /tmp/test.txt //注意單純echo,從屏幕上看不到任何輸出,由于cron把任何輸出都email到root的信箱了。

每兩個小時 

0  */2  *  *  *  echo "Have a break now." >> /tmp/test.txt  

晚上11點到早上8點之間每兩個小時和早上8點 

0  23⑺/2,8  *  *  *  echo "Have a good dream" >> /tmp/test.txt

每月的4號和每一個礼拜的礼拜1到礼拜3的早上11點 

0  11  4  *  1⑶  command line

1月1日早上4點 
0 4 1 1 * command line SHELL=/bin/bash PATH=/sbin:/bin:/usr/sbin:/usr/bin MAILTO=root //如果出現(xiàn)毛病,或有數(shù)據(jù)輸出,數(shù)據(jù)作為郵件發(fā)給這個帳號 HOME=/ 

每小時履行/etc/cron.hourly內(nèi)的腳本

01  *  *  *  *  root run-parts /etc/cron.hourly

每天履行/etc/cron.daily內(nèi)的腳本

02  4  *  *  *  root run-parts /etc/cron.daily 

每星期履行/etc/cron.weekly內(nèi)的腳本

22  4  *  *  0  root run-parts /etc/cron.weekly 

每個月去履行/etc/cron.monthly內(nèi)的腳本 

42  4  1  *  *  root run-parts /etc/cron.monthly 

注意: "run-parts"這個參數(shù)了,如果去掉這個參數(shù)的話,后面就能夠?qū)懸\行的某個腳本名,而不是文件夾名。  
每天的下午4點、5點、6點的5 min、15 min、25 min、35 min、45 min、55 min時履行命令。 

5,15,25,35,45,55  16,17,18  *  *  *  command

每周1,3,5的下午3:00系統(tǒng)進入保護狀態(tài),重新啟動系統(tǒng)。

00  15  *  *  1,3,5  shutdown -r +5

每小時的10分,40分履行用戶目錄下的innd/bbslin這個指令: 

10,40  *  *  *  *  innd/bbslink 

每小時的1分履行用戶目錄下的bin/account這個指令: 

1  *  *  *  *  bin/account

每天凌晨3點210分履行用戶目錄下以下所示的兩個指令(每一個指令以;分隔): 

20  3  *  *  *  (/bin/rm -f expire.ls logins.bad;bin/expire$#@62;expire.1st) 

每一年的1月和4月,4號到9號的3點12分和3點55分履行/bin/rm -f expire.1st這個指令,并把結(jié)果添加在mm.txt這個文件以后(mm.txt文件位于用戶自己的目錄位置)。 

12,55  3  4⑼  1,4  *  /bin/rm -f expire.1st$#@62;$#@62;mm.txt 

at命令實現(xiàn)定時任務(wù)
  假設(shè)我們只是想要讓特定任務(wù)運行1次,那末,這時候候就要用到at監(jiān)控程序了。
    at類似打印進程,會把任務(wù)放到/var/spool/at目錄中,到指定時間運行它 。at命令相當(dāng)于另外一個shell,運行at time命令時,它發(fā)送1個個命令,可以輸入任意命令或程序。

    at命令履行流程以下

  # at 2:05 tomorrow

  at>/home/kyle/do_job

  at> Ctrl+D

  AT Time中的時間表示方法

  -----------------------------------------------------------------------

  時 間 例子 說明

  -----------------------------------------------------------------------

  Minute    at now + 5 minutes   任務(wù)在5分鐘后運行

  Hour      at now + 1 hour      任務(wù)在1小時后運行

  Days      at now + 3 days      任務(wù)在3天后運行

  Weeks     at now + 2 weeks     任務(wù)在兩周后運行

  Fixed     at midnight          任務(wù)在午夜運行

  Fixed     at 10:30pm           任務(wù)在晚上10點30分

  注意:linux默許為不啟動,而ubuntu默許為啟動的。檢查是不是啟動,用service atd檢查語法,用service atd status檢查atd的狀態(tài),用service atd start啟動atd服務(wù)。

  查看at履行的具體內(nèi)容:1般位于/var/spool/at目錄下面, 用vi打開,在最后1部份就是你的履行程序



參數(shù)詳解
-V : 印出版本編號 
-q : 使用指定的佇列(Queue)來貯存,at 的資料是寄存在所謂的 queue 中,使用者可以同時使用多個 queue,而 queue 的編號為 a, b, c... z 和 A, B, ... Z 共 52 個 
-m : 即便程序/指令履行完成后沒有輸出結(jié)果, 也要寄封信給使用者 
-f file : 讀入預(yù)先寫好的命令檔。使用者不1定要使用交談模式來輸入,可以先將所有的指定先寫入檔案后再1次讀入 
網(wǎng)絡(luò)利用


-l : 列出所有的指定 (使用者也能夠直接使用 atq 而不用 at -l) 
-d : 刪除指定 (使用者也能夠直接使用 atrm 而不用 at -d) 
-v : 列出所有已完成但還沒有刪除的指定 

刪除任務(wù)
atrm 2


3天后的下午 5 點鍾履行 /bin/ls : 
at 5pm 3 days /bin/ls 

3個星期后的下午 5 點鍾履行 /bin/ls : 
at 5pm 2 weeks /bin/ls 

明天的 17:20 履行 /bin/date : 
at 17:20 tomorrow /bin/date 

1999 年的最后1天的最后1分鐘印出 the end of world ! 
at 23:59 12/31/1999 echo the end of world !

 

cron是1個linux下的定時履行工具,可以在無需人工干預(yù)的情況下運行作業(yè)。由于Cron 是Linux的內(nèi)置服務(wù),但它不自動起來,可以用以下的方法啟動、關(guān)閉這個服務(wù):

/sbin/service crond start //啟動服務(wù)

  /sbin/service crond stop //關(guān)閉服務(wù)

  /sbin/service crond restart //重啟服務(wù)

  /sbin/service crond reload //重新載入配置

 

 

  你也能夠?qū)⑦@個服務(wù)在系統(tǒng)啟動的時候自動啟動:

 

  在/etc/rc.d/rc.local這個腳本的末尾加上:

  /sbin/service crond start

 

  現(xiàn)在Cron這個服務(wù)已在進程里面了,我們就能夠用這個服務(wù)了

 

-------------------------------------

 

 

Linux下定時備份mysql為例說明下

寫1個簡單的mysql備份shell腳本

vi

#!/bin/sh
da=`date +%Y%m%d%H%M%S`
mysqldump -u root -pdongjj --all-database>/root/mysqlbakup/$da

保存為 mysqlbak.sh

然后crontab-e

 0 3 * * * /root/mysqlbak.sh 

保存退出

 

相干命令----------------

crontab file [-u user]-用指定的文件替換目前的crontab。 
crontab-[-u user]-用標準輸入替換目前的crontab. 
crontab⑴[user]-列出用戶目前的crontab. 
crontab-e[user]-編輯用戶目前的crontab. 
crontab-d[user]-刪除用戶目前的crontab. 
crontab-c dir- 指定crontab的目錄。 
crontab文件的格式:M H D m d cmd. 
M: 分鐘(0⑸9)。 
H:小時(0⑵3)。 
D:天(1⑶1)。 
m: 月(1⑴2)。 
d: 1星期內(nèi)的天(0~6,0 表示星期天)
   除數(shù)字還有幾個個特殊的符號就是"*"、"/"和"-"、",",*代表所有的取值范圍內(nèi)的數(shù)字,"/"代表每的意思,"*/5"表示每5個單位,"-"代表從某個數(shù)字到某個數(shù)字,","分開幾個離散的數(shù)字。

 

 

每次編輯完某個用戶的cron設(shè)置后,cron自動在/var/spool/cron下生成1個與此用戶同名的文件,此用戶的cron信息都記錄在這 個文件中,這個文件是不可以直接編輯的,只可以用crontab -e 來編輯。cron啟動后每過1份鐘讀1次這個文件,檢查是不是要履行里面的命令。因此此文件修改后不需要重新啟動cron服務(wù)。

查看crontab 履行的日志,可以在/var/log/cron* 查看,或 0 3 * * * /root/mysqlbak.sh >/var/log/mysqlbak.log 2>&1 把日志定向出來查看



生活不易,碼農(nóng)辛苦
如果您覺得本網(wǎng)站對您的學(xué)習(xí)有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關(guān)閉
程序員人生
主站蜘蛛池模板: 羞羞色院91蜜桃在线观看 | 亚洲欧美自拍另类图片色 | 国产在线播放成人免费 | 视频在线观看免费播放www | 一区视频在线播放 | 国产亚洲在线观看 | xx性黑人freesex | 欧美a色 | 青青草原手机在线视频 | 欧美羞羞 | 欧美日韩国产一区二区三区 | 欧美视频一级 | 91精品国产一区二区三区四区 | 亚洲精品久久久久影院 | h在线看| 精品久久成人免费第三区 | 国产热视频 | 国产欧美一区二区成人影院 | 黄网站色网址 | 亚洲春色在线观看 | 欧美 日韩 中文 | 婷婷色一二三区波多野衣 | 久久国产精品免费看 | 国产精品视频福利 | 久久一区二区三区免费播放 | 手机看片日韩日韩韩 | 国产午夜亚洲精品久久www | 黄大片日本一级在线a | 91色视频在线观看 | 日本www在线播放 | 国产精品一区二区三区四区 | 永久看片| 中文字幕国产欧美 | 小说区图片区综合久久亚洲 | 中文字幕精品一区 | 免费黄色网址网站 | 亚洲麻豆精品 | 1024在线视频国产在线播放 | xxxxhd欧美精品 | 在线中文字幕亚洲 | h在线观看免费 |