Linux 計畫任務

2021-10-10 10:28:42 字數 2904 閱讀 7578

指定某個日期或週期性的執行指令

crontab就是計畫任務,類似於生活中的鬧鐘,定點執行需要的操作

常用選項:

-l list 列出指定使用者的計畫任務列表

-u:user,指定的使用者名稱,如果不指定,則表示當前使用者

-r:remove,刪除指定使用者的計畫任務列表

編寫計畫任務:

計畫任務的規則語法格式,以行為單位,一行為乙個計畫:

執行的命令建議寫成絕對路徑的格式!

1、定時任務相關的檔案和目錄

/etc/cron.hourly	系統定時任務小時要執行的內容

/etc/cron.daily 系統定時任務每天要執行的內容

/etc/cron.weekly 系統定時任務每週要執行的內容

/etc/cron.monthly 系統定時任務每月要執行的內容

/etc/crontab 定時任務配置檔案

/etc/cron.deny 定時任務黑名單

2、定時任務配置檔案說明

/etc/crontab檔案內

path=/sbin:/bin:/usr/sbin:/usr/bin

輸入的命令必須存在上序路徑內

* * * * *

分 時 日 月 周

分:0~59

時:0~23

日:1~31

月:1~12

周:0~7,0和7表示星期天

四個符號:

*:表示取值範圍中的每乙個數字

-:做連續區間表示式的,例如:想要1-5天執行,則可以在日的位置寫:1-5

/:表示每多少個,例如:想每10分鐘一次,則可以在分的位置寫:*/10

,:表示多個取值,比如想在1點,2點6點執行,則可以在時的位置寫:1,2,6

00 02 * * * ls

#每天的凌晨2點整執行

00 02 1 * * ls

#每月的1日的凌晨2點整執行

00 02 14 2 * ls

#每年的2月14日凌晨2點執行

00 02 * * 7 ls

#每週天的凌晨2點整執行

00 02 * 6 5 ls

#每年的6月周五凌晨2點執行

00 02 14 * 7 ls

#每月14日或每週日的凌晨2點都執行

00 02 14 2 7 ls

#每年的2月14日或每年2月的周天的凌晨2點執行

*/10 02 * * * ls

#每天凌晨2點,每隔10分鐘執行一次

* * * * * ls

#每分鐘都執行

00 00 14 2 * ls

#每年2月14日的凌晨執行命令

*/5 * * * * ls

#每隔5分鐘執行一次

00 02 * 1,5,8 * ls

#每年的1月5月8月凌晨2點執行

00 02 1-8 * * ls

#每月1號到8號凌晨2點執行

0 21 * * * ls

#每天晚上21:00執行

45 4 1,10,22 * * ls

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

45 4 1-10 * * ls

#每月的1到10號的4:45執行

3,15 8-11 */2 * * ls

#每隔兩天的上午8點到11點的第3和第15分鐘執行

0 23-7/1 * * * ls

#晚上11點到早上7點之間,每隔乙個小時執行

15 21 * * 1-5 ls

#周一到周五每天晚上21:15執行

安裝時間同步命令:yum install ntpdate -y

確認命令所在目錄:/usr/sbin/ntpdate

*/5 * * * * ntpdate ntp.aliyun.com 每5分鐘進行一次時間同步

編寫檢視記憶體總容量、剩餘量、使用率的指令碼

# 獲取總容量

total=`free -m | awk 'nr==2'`

# 獲取剩餘量

free=`free -m | awk 'nr==2'`

# 獲取使用率

used=`free -m | awk 'nr==2'`

date=`date +%f_%h-%m-%s`

# 全部寫入檔案

echo 'total:'$total'm' >> /test/$_mem_static.txt

echo 'free:'$free'm' >> /test/$_mem_static.txt

echo 'used:'$used >> /test/$_mem_static.txt

echo '-----memory_check_input_txt------'

# 執行檢視狀態的指令碼

[root@localhost test]# sh mem_check.sh

-----memory_check_input_txt------

# 以當前時間命名

[root@localhost test]# cat 2020-11-10_21-30-24_mem_static.txt

total:972m

free:586m

used:17%

crontab -e 將剛編寫的指令碼加入計畫任務:

* 0 * * * sh /test/mem_check.sh 表示每天凌晨執行一次指令碼

Linux計畫任務

1.at命令 指定乙個時間執行乙個任務。2.cron命令 根據乙個時間表自動執行任務。3.anacron命令 在乙個指定時間間隔錯過後自動執行任務。at命令 安排乙個任務在未來執行,需要乙個系統後台atd程序。4.如果這個程序沒有開啟,那麼執行 etc init.d atd restart chkc...

Linux 計畫任務

at命令可以在某一指定時間排程一次性作業命令格式 at q x l f file d v time引數含義 q使用指定的佇列來儲存at資料,預設儲存在a佇列,隊列表號為a z,a z總52個 l列出所有的at計畫任務,等同於atq命令 d刪除at計畫任務,等同於atrm v列出所有已經完成單尚未刪除...

linux計畫任務

cron是乙個linux下的定時執行工具,可以在無需人工干預的情況下執行作業。由於cron 是linux的內建服務,但它不自動起來,可以用以下的方法啟動 關閉這個服務 sbin service crond start 啟動服務 sbin service crond stop 關閉服務 sbin se...