CROND 定時任務 學習

2021-09-20 16:51:32 字數 4450 閱讀 5225

定時任務 crond (守護程序)

程式 : 靜止

程序 : 動態

crontab 設定命令 

-l : list 列表

-e : 編輯

-r : 刪除

-i : 刪除前確認

-u : 指定操作使用者 1

2

3

4

5

6

7

[root@beiyong2 ~]# chkconfig --list crond   #可以檢視 crond 是否執行

[root@beiyong2cron]# crontab -e   #編輯 定時檔案

############         #輸入若干#

[root@beiyong2cron]# crontab -l      #檢視定時任務

##########

[root@beiyong2cron]# cat /var/spool/cron/root         #定時任務相對應的檔案,不同使用者對應不同檔名

##########

1

2

[root@beiyong2cron]# ls -l `which crontab`         # crontab 命令具有 setuid 許可權

-rwsr-xr-x. 1 root root 51784 3月  30 2015/usr/bin/crontab

[root@beiyong2 cron]# cat /etc/crontab    #定時任務的基本格式 

" * " 代表 '每' 的意思     5 * * * *           #每五分鐘執行一次命令  

00 23 * * *      #每天23點執行命令

" - " 代表範圍              00 17-19 * * *        #每天17 18 19點整數點執行

" , " 代表分隔               30 17,18,19 * * *    #每天 17:30 18:30 19:30 執行

" /n " 代表每單位時間       */10 * * * *         #每10分鐘進行執行

30 3-5,17-19 * * *     #每天的3:30 4:30 5:30 17:30 18:30 19:30執行

30 */6 * * *               #每隔 6 個小時的半點時刻

30 8-18/2 * * *         #每天 8 點到 18 點每隔 2 個小時的半點時刻

30 21 * * *                #每天的 21:30 執行

45 4 1,10,22 * *        #每月 1 號 10 號 22 號的 4:45 執行

10 1 * * 6,0               #每週六週日 1:10 執行

0,30 18-23 * * *        #每天18至23點之間,每間隔30分鐘重啟

00 */n * * *               #每隔 1 小時的整點

00 11 * 4 1-3           #4月的每週1,2,3的11點整

練習 : 每分鐘在 /server/log/haha 中列印 haha 的全拼     (在命令中先測試成功,然後新增定時任務) 1

2

3

4

5

6

[root@beiyong2 ~]# crontab -e

* * * * *echo"haha">>/server/log/haha.txt#新增將要執行的命令

[root@beiyong2 ~]# mkdir -p /server/log              #為其建立目錄

[root@beiyong2 ~]# tail -f /server/log/haha.txt    #跟蹤乙個檔案(-f 動態檢視)

haha

haha

小結 : 

最好新增注釋

/server/log 目錄需要事先存在

定時任務一定要使用絕對路徑

crond 服務必須開啟執行

在命令列中先測試成功,在新增定時任務

生產任務程式**隨意列印輸出資訊

定時任務執行的指令碼要規範(/server/scripts)

配置定時任務規範操作過程

練習 : 每週六,日上午9:00和下午14:00,去學校上課 

要求 : /server/scripts/oldboy.sh 指令碼的功能是列印當前的日期 : 格式為 ***x-xx-xx 1

2

3

4

5

6

7

8

[root@beiyong2 ~]# mkdir -p /server/scripts          #首先建立目錄

[root@beiyong2 scripts]# echo 'date +%f' > /server/scripts/date.sh

[root@beiyong2 scripts]# chmod +x date.sh

[root@beiyong2 scripts]# ./date.sh           #在命令列中測試指令碼

2016-07-16

[root@beiyong2 scripts]# crontab -e

00 9,14 * * 6,0/bin/bash/server/scripts/date.sh  &>/dev/null# &> /dev/null 可以保證innode不會被占用

df-i  可以檢視innode號是否被佔滿

練習 : 每隔 2 個小時將系統檔案 /etc/service 檔案打包備份到 /tmp 下 ( 每次備份按時間生成不同的備份包 ) 1

2

3

4

#!/bin/bash      #在命令列中測試正確後寫入指令碼,並且測試指令碼正確性

cd/etc/&&tar-zcf/tmp/service_$(date+%f-%h).tar.gz ./services

[root@beiyong2 scripts]# crontab -l

00 */2* * */bin/sh/server/scripts/services.sh &>/dev/null#新增定時任務

1.到目標內容的上級目錄打包

2.打包的頻率是分,包名必須精確到分

3.確保命令執行正確,然後寫到指令碼

crond定時任務

新增定時任務 crontab e 執行jmeter定時任務 30 bin sh home test tool apache jmeter 5.1 bin jmeter.sh n t home test tool testdata jmx yytv310 116 1hour.jmx r 10.40.7...

crond 系統定時任務

1 重新啟動crond服務 root hadoop101 service crond restart 1 基本語法 crontab 選項 2 選項說明 選項功能 e編輯crontab定時任務 l查詢crontab任務 r刪除當前使用者所有的crontab任務 3 引數說明 root hadoop10...

Linux定時任務(crond)

1 crond定義 crond是linux系統中用來定期執行命令或指定程式的一種服務或軟體。1 linux系統自身定期執行的任務 輪詢系統日誌 備份資料等 2 使用者執行的任務 定時更新同步時間 資料備份等 2 crond命令語法 定時任務的命令是crontab,其守護程序是crond 服務執行的程...