定時任務 crond (守護程序)
程式 : 靜止
程序 : 動態
crontab 設定命令
-l : list 列表
-e : 編輯
-r : 刪除
-i : 刪除前確認
-u : 指定操作使用者 1
2
3
4
5
6
7
[root@beiyong2 ~]
# chkconfig --list crond #可以檢視 crond 是否執行
[root@beiyong2
cron
]
# crontab -e #編輯 定時檔案
############ #輸入若干#
[root@beiyong2
cron
]
# crontab -l #檢視定時任務
##########
[root@beiyong2
cron
]
# cat /var/spool/cron/root #定時任務相對應的檔案,不同使用者對應不同檔名
##########
1
2
[root@beiyong2
cron
]
# 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 服務執行的程...