Linux建立定時任務crontab

2021-10-04 16:56:05 字數 1607 閱讀 9096

最近需要在linux上執行乙個指令碼,每天15點自動上傳資料到另外一台伺服器上。這windows伺服器中,可以通過計畫任務來按成,在linux伺服器中可以通過crontab程序完成,其功能基本一樣。

crontab是linux的守護程序(damon),一般會自安裝,無需我們自己安裝。crontab服務跟其他服務一樣,可以啟動、停止、重啟等操作。以下是操作命令:

檢視任務:service crond status

啟動服務:service crond start

關閉服務:service crond stop

重啟服務:service crond restart

過載配置:service crond reload

/etc/crontab  定時任務列表(系統任務)

/etc/cron.deny  禁止使用crontab的使用者列表

/etc/cron.allow  允許使用crontab的使用者列表

/var/spool/cron/  定時任務列表(使用者任務)。這是乙個目錄,裡面包含使用者對應的檔案。如使用者hw,他建立3個任務,那麼/var/spool/cron中就會存在hw檔案,開啟hw檔案,裡面就是hw使用者建立的任務列表。

開啟/etc/crontab,可以看到建立任務的語法結構。

有五個時間點、乙個使用者點、乙個指令點需要指明。

五個時間點分別是分鐘(minute,取值0-59),小時(hour,取值0-23),日期(day of month ,取值1-31,需要具有實際意義,如2月的31日這樣無意義),月(month,取值1-12),周(day of week,取值0-6,可以使用0或7指代週日)。

乙個使用者點(user-name)。注意:新增定時任務時,如果是在使用者下新增定時任務時,不需要加使用者名稱。

乙個指令點(command)。你需要執行的命令

時間點中的特殊字元

特殊字元

含義

說明

*(星號)

任意的時間,預設值就是*

* * * * * command

表示每分鐘執行一次。

全部是*,表示任意時間都要執行,而crontab的執行間隔的最小單位是分鐘,故每分鐘執行一次。 ,

(逗號)

多個值的分隔符

15,30,45 ***

*command

表示每小時的15分、30分、45分執行

30 8,10,12 * * * command

表示每天8:30、10:30、12:30執行 -

(減號)

取值空間,取值範圍

0 13-15 * * * command

表示每天的13點到15點執行

*/n每隔n

*/15 14-16 * * 1 command

表示周一的14點到16點每隔15分鐘執行一次

crontab的語法

Linux建立Cron定時任務

1.以當前使用者建立 crontab e以指定使用者身份建立 sudo crontab u e 2.回車,預設以nano開啟配置檔案,然後在後面新增任務即可 格式 示例 執行目標的絕對路 每分鐘執行 0 執行目標的絕對路 每小時執行 0 0 執行目標的絕對路 每天零點執行 0 7,15 執行目標的絕...

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...