Linux定時任務系統Cron使用總結

2021-06-16 05:05:03 字數 1677 閱讀 8875

linux定時任務系統cron使用總結

cron是乙個linux下的定時執行工具,可以在無需人工干預的情況下執行作業。由於cron 是linux的內建服務,但它不自動起來,可以用以下的方法啟動、關閉這個服務:

/sbin/service crond start //啟動服務

/sbin/service crond stop //關閉服務

/sbin/service crond restart //重啟服務

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

你也可以將這個服務在系統啟動的時候自動啟動:

在/etc/rc.d/rc.local這個指令碼的末尾加上:

/sbin/service crond start

每次編輯完某個使用者的cron設定後,cron自動在/var/spool/cron下生成乙個與此使用者同名的檔案,此使用者的cron資訊都記錄在這個檔案中,這個檔案是不可以直接編輯的,只可以用crontab -e 來編輯。cron啟動後每過乙份鐘讀一次這個檔案,檢查是否要執行裡面的命令。因此此檔案修改後不需要重新啟動cron服務。

如果直接編輯,就會遇到如下的問題,ant 命令在cron裡無效,但在命令列裡有作用

我在/etc/crontab裡面寫了這麼一段:

00 20 * * * root ant -file /home/ant/antcvs/build.xml

用來自動執行ant命令,可是沒有反應,第二天一看,並沒有執行

/etc/crontab

00 21 * * * root perl /home/devtest/work/deploy.pl -r webserver/branch -d webdesign/gagmedata/devgamedata -b 1.2.10 >> /home/devtest/work/deploy.log 2>&1

記住2>&1很有用,會列印出一些標準輸入輸出中的異常資訊

新增內容:crontab -e ,不需要再加root 賬戶名

00 21 * * * perl /home/devtest/work/deploy.pl  -r webserver/branch -d webdesign/gagmedata/devgamedata -b 1.2.10 >> /home/devtest/work/deploy.log 2>&1

為21點去執行這個命令列,執行列印結果追加到deploy.log 需要改動的是大分支版本號1.2.10

. tail -f /var/log/cron 檢視crontab的執行日誌

如果加入cron任務的命令列或者程式有用到環境變數的,比如ant,perl,svn,則需要在最開始加入環境變數

shell=/bin/bash

path=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/j2sdk1.4//bin [最好把全部的從環境變數中拷貝過來]

mailto=root

home=/root

發現svn在cron裡也無效,但命令列中有效,查得原因如下:

1.需要在svn 命令裡加password username

svn up $root/$branch --username jiangguilong --password 6543244

2.編碼的問題,則需要在環境變數中lang=zh_cn.utf-8

linux定時任務cron

一 cron格式 其格式如下 minute hour day month dayofweek command 分鐘 小時 天 月 天每星期 命令 比如 15 ls 表示每15分鐘執行一次ls 即每個小時的第0 15 30 45 60分鐘執行ls命令 25 8 11 ls 每天8 11點的第25分鐘執...

Cron 定時任務

一般系統都會有定時任務存在,比如訂單系統,會根據定時任務來實時同步訂單狀態,同步交易狀態等等。定時任務可以使用quartz 定時任務,也可以自己寫乙個任務排程系統,只要能實現功能就可以。下面我簡單介紹一下quartz 定時任務配置,需要配置三個bean,分別為 quartz,trigger,sche...

Cron定時任務

完整的是七位 秒 分鐘 小時 日 月 星期 年 有的沒有這個年 0 0 12 每天中午12點觸發 0 15 10 每天上午10 15觸發 0 15 10 每天上午10 15觸發 0 15 10 每天上午10 15觸發 0 15 10 2005 2005年的每天上午10 15觸發 0 14 在每天下午...