手机看片精品高清国产日韩,色先锋资源综合网,国产哺乳奶水91在线播放,乱伦小说亚洲色图欧洲电影

linux計劃任務

2023-05-12 10:20:04 1445

計劃任務是系統的常見功能,利用任務計劃功能,可以將任何腳本、程序或文檔安排在某個最方便的時間運行。任務計劃在每次系統啟動的時候啟動并在后臺運行。在Linux系統中,當我們需要在服務器上定時執行一些重復性的事件時使用的,可以通過Linux計劃任務程序來運行準備好的腳本、批處理文件夾、程序或命令,在某個特定的時間運行。

計劃任務在Linux 中一般使用 Crontab,通過 crontab 命令,我們可以在固定的間隔時間執行指定的系統指令或 Shell 腳本。Linux 系統上面原本就有非常多的計劃性工作,因此這個系統服務是默認啟動的。另外, 由于使用者自己也可以設置計劃任務,所以, Linux 系統也提供了使用者控制計劃任務的命令:crontab命令。因此,Linux計劃任務整體還是圍繞Crontab展開的。

1、crontab命令選項

# crontab [option]

-u 指定一個用戶

-l 列出某個用戶的任務計劃

-r 刪除某個用戶的任務

-e 編輯某個用戶的任務

2、cron文件寫法

可用crontab -e命令來編輯,編輯的是/var/spool/cron下對應用戶的cron文件,也可以直接修改/etc/crontab文件。

[root@localhost ~]# cat /etc/crontab
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root

# For details see man 4 crontabs

# Example of job definition:
# .---------------- minute (0 - 59)
# | .------------- hour (0 - 23)
# | | .---------- day of month (1 - 31)
# | | | .------- month (1 - 12) OR jan,feb,mar,apr ...
# | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# | | | | |
# * * * * * user-name command to be executed

image.png

Minute Hour Day Month Week command

分鐘 小時 天 月 星期 命令

0-59 0-23 1-31 1-12 0-6 command

Minute 每個小時的第幾分鐘執行該任務

Hour 每天的第幾個小時執行該任務

Day 每月的第幾天執行該任務

Month 每年的第幾個月執行該任務

DayOfWeek 每周的第幾天執行該任務,0表示周日

Command 指定要執行的程序 、腳本或命令

3、特殊符號的含義

星號(*):代表所有可能的值,例如month字段如果是星號,則表示在滿足其它字段的制約條件后每月都執行該命令操作。

逗號(,):可以用逗號隔開的值指定一個列表范圍,例如,“1,2,5,7,8,9”

中杠(-):可以用整數之間的中杠表示一個整數范圍,例如“2-6”表示“2,3,4,5,6”

正斜線(/):可以用正斜線指定時間的間隔頻率,例如“0-23/2”表示每兩小時執行一次。同時正斜線可以和星號一起使用,例如*/10,如果用在minute字段,表示每十分鐘執行一次。

4、常用命令

1)cron配置文件路徑

# vi /etc/crontab

2)查看cron服務情況

# service crond status //crond服務狀態 systemctl status crond

# service crond stop   //crond
服務關閉 systemctl stop crond

# service crond start   //crond
服務打開 systemctl start crond

4)查看cron日志

# cat /var/log/cron

5)別忘了將腳本改成可執行

# chmod +x filename

5、常用示例

5 * * * * ls 指定每小時的第5分鐘執行一次ls命令

30 5 * * * ls 指定每天的 5:30 執行ls命令

30 7 8 * * ls 指定每月8號的7:30分執行ls命令

30 5 8 6 * ls 指定每年的6月8日5:30執行ls命令

30 6 * * 0 ls 指定每星期日的6:30執行ls命令[注:0表示星期天,1表示星期1,以此類推,也可以用英文來表示,sun表示星期天,mon表示星期一等。]

30 3 10,20 * * ls 每月10號及20號的3:30執行ls命令[注:“,”用來連接多個不連續的時段]

25 8-11 * * * ls 每天8-11點的第25分鐘執行ls命令[注:“-”用來連接連續的時段] */15 * * * * ls 每15分鐘執行一次ls命令 [即每個小時的第0 15 30 45 60分鐘執行ls命令 ]

30 6 */10 * * ls 每個月中,每隔10天6:30執行一次ls命令[即每月的1、11、21、31日是的6:30執行一次ls命令 ]

每天7:50以root 身份執行/etc/cron.daily目錄中的所有可執行文件

50 7 * * * root run-parts /etc/cron.daily [ 注:

run-parts參數表示,執行后面目錄中的所有可執行文件

第10、20、30分鐘輸出到/tmp/cron1.txt:

10,20,30 * * * * echo “第10、20、30分鐘輸出一次” >> /tmp/cron1.txt

以用戶lzw.me的身份每兩小時就運行某個程序:

0 */2 * * * lzw.me /usr/bin/somecommand >> /dev/null 2>&1

 


提交成功!非常感謝您的反饋,我們會繼續努力做到更好!

這條文檔是否有幫助解決問題?

非常抱歉未能幫助到您。為了給您提供更好的服務,我們很需要您進一步的反饋信息:

在文檔使用中是否遇到以下問題: