河南建設(shè)教育中心網(wǎng)站免費(fèi)域名空間申請網(wǎng)址
目錄
計劃任務(wù)
一次性計劃任務(wù)
長期性計劃任務(wù)
計劃任務(wù)
管理員可以編輯自己的和普通用戶的計劃任務(wù)
普通用戶只可以編輯自己的計劃任務(wù)
計劃任務(wù)根據(jù)執(zhí)行方式分為一次性計劃任務(wù)、長期性計劃任務(wù)
一次性計劃任務(wù)
此計劃只執(zhí)行一次,執(zhí)行后或就不會再執(zhí)行了
通過at命令來實(shí)現(xiàn)
at 時間
?輸入想要執(zhí)行的任務(wù)
?ctrl + d 保存并退出
?ctrl + c 直接退出
at -c? 任務(wù)編碼?? 查看計劃任務(wù)的工作
at -l???????????? 顯示待執(zhí)行的任務(wù)列表(顯示任務(wù)編號 任務(wù)執(zhí)行時間? 發(fā)起用戶)
at -d? 任務(wù)編碼? 刪除指定待執(zhí)行任務(wù)
at -m??????????? 任務(wù)執(zhí)行后給用戶發(fā)郵件
at now +5 MINUTE 創(chuàng)建任務(wù),5分鐘后執(zhí)行(HOUR時、DAY天、MONTH月)
atrm命令
atrm 任務(wù)編碼???? 刪除計劃任務(wù)
長期性計劃任務(wù)
長期性計劃任務(wù),周期性的根據(jù)時間規(guī)則執(zhí)行任務(wù)
時間規(guī)則格式-此格式是固定的,如果不配置參數(shù),需要使用*來做占位
分、時、日、月、星期 、命令
其中命令的使用方式必須是 命令路徑方式(可以通過which來進(jìn)行查找)
即ls -l 需要寫為 /usr/bin/ls -l
例子:
10 21 12? * ???*? ??命令????? ?每月的12號21點(diǎn)10分執(zhí)行任務(wù)
*? *? *? */2 ???*?? 命令? ? ? ? ? 當(dāng)下開始每間隔兩個月??
*? *? *?? 1,2,3 ?*?? 命令?????? 1、2、3個月
*? *? *?? 1-5?? *?? 命令?????? 1到5個月
一般星期和日期只選擇一個進(jìn)行書寫
crontab命令
長期計劃任務(wù)通過Linux的crond服務(wù)來實(shí)現(xiàn)?
而crond服務(wù)需要通過crontab命令來進(jìn)行配置
即:crond是服務(wù)名稱、crontab是配置工具名稱
需要開啟crond服務(wù)
systemctl enable crond? 開啟crond服務(wù)
systemctl restart crond? 重新啟動crond服務(wù)
如果配置了計劃之后沒有生效,可以重新啟動下服務(wù)
命令格式
?crontab -e? 創(chuàng)建/編輯計劃任務(wù)
?crontab -l?? 查看計劃任務(wù)
?crontab -r?? 刪除計劃任務(wù)
?-u 用戶名 ??創(chuàng)建針對某個用戶的計劃任務(wù)
也可以直接通過命令路徑的方式編輯計劃
vim /etc/crontab? 來創(chuàng)建/編輯計劃任務(wù)
不過不推薦使用vim進(jìn)行編輯,雖然有注釋,但是沒有糾錯功能
使用crontab有糾錯功能,不過crontab 默認(rèn)也是通過調(diào)用vim編譯器來實(shí)現(xiàn)的
注意事項(xiàng)
當(dāng)普通用戶使用at和crontab不起作用時,不一定是計劃任務(wù)的原因
還可能是用戶權(quán)限的問題