Linux定時任務調度
crond任務調度
系統在某個時間段執行特定的命令或程序。
1、數據庫的定時備份操作。
2、系統一些重復工作,病毒掃描等。
用法
crontab 【選項】
-e:編輯crontab定時任務
-l:查詢crontab任務
-f:刪除當前用戶所有的crontab任務
-r:終止任務調度
service crond restart:重啟任務調度
crontab -e
*/1 * * * * ls -l /etc > /tmp/to.txt -- 每小時的每分鍾執行
- 第一個*:一小時中的第幾分鍾【0-59】
- 第二個*:一天中的第幾個小時【0-23】
- 第三個*:一個月當中的第幾天【1-31】
- 第四個*:一年中的的第幾月【1-12】
- 第五個*:一周當中對的星期幾【0-7 0和7都表示 周日】
| 特殊符號 | 說明 |
|---|---|
| * | 代表任意時間 |
| , | 不連續的時間范圍,0 8,12,15 * * *,每天8、12、15點執行。 |
| - | 連續的時間范圍,0 5 * * 1-6,周一到周六的凌晨5點執行。 |
| */n | 每隔多久執行一次,*/10 * * * *,每隔10分鍾執行一次。 |
示例
| 示例 | 含義 |
|---|---|
| 45 22 * * * | 每天22點45分執行 |
| 0 17 * * 1 | 每周一的17點0分執行 |
| 0 5 1,15 * * | 每月1、15號的凌晨5點0分執行 |
| 40 4 * * 1-5 | 每周一到周五凌晨4點40分執行 |
| */10 4 * * * | 每天凌晨4點,每隔10分鍾執行一次。5點就不執行了 |
| 0 0 1,15 * 1 | 每月1、15號、每周一的0點0分執行 |
實際操作
1、每隔1分鍾,當前日期信息,寫入 文件中。
-
vim /home/wsw/mytask1.sh
- date >> /home/wsw/dates.txt
-
給mytask1.sh 執行權限
- chmod 744 /home/wsw/mytask1.sh
-
crontab -e
-
*/1 * * * * /home/wsw/mytask1.sh
2、每天凌晨2點,mysql數據庫 testdb、備份。
- vim /home/wsw/mytask2.sh
- /usr/local/mysql/bin/mysqldump -u root -proot testdb > /tmp/db.bak
- chmod 744 /home/wsw/mytask2.sh
- crontab -e
- 0 2 * * * /home/wsw/mytask2.sh
