[TOC]
計劃任務(wù)服務(wù)程序
計劃任務(wù)分為以下兩種
- 一次性計劃任務(wù):今晚11點30分開啟網(wǎng)站
- 長期性計劃任務(wù):每周一的凌晨3點25分把/home/wwwroot目錄打包備份為backup.tar.gz
1 一次性計劃任務(wù)
命令:
-
at 時間
:設(shè)置在特定時間只執(zhí)行一次的任務(wù),一般用來滿足臨時的工作需求 -
at -l
:查看已設(shè)置好。但還未執(zhí)行的一次性計劃任務(wù) -
atrm 任務(wù)序號
:刪除某個一次性計劃任務(wù)
示例:在今晚23:30分自動重啟
[root@study sh_folder]# at 23:30
at> systemctl restart httpd
at> <EOT> #此處按下 Ctrl+d 來結(jié)束編寫計劃任務(wù)
job 2 at Thu Dec 13 23:30:00 2018
[root@study sh_folder]# at -l
2 Thu Dec 13 23:30:00 2018 a root
示例:非交互式創(chuàng)建一次性計劃任務(wù)
[root@study sh_folder]# echo "systemctl restart httpd" | at 23:30
job 3 at Thu Dec 13 23:30:00 2018
[root@study sh_folder]# at -l
3 Thu Dec 13 23:30:00 2018 a root
2 Thu Dec 13 23:30:00 2018 a root
示例:刪除一次性計劃任務(wù)
[root@study sh_folder]# atrm 2
[root@study sh_folder]# at -l
3 Thu Dec 13 23:30:00 2018 a root
2 周期性計劃任務(wù)
crontab
命令參數(shù):
-
-e
:創(chuàng)建砰盐、編輯計劃任務(wù) -
-l
:查看當前計劃任務(wù) -
-r
:刪除某條計劃任務(wù) -
-u
:如果是管理員,可以他人計劃任務(wù)
2.1 使用 crond 設(shè)置任務(wù)參數(shù)字段
使用 crond 服務(wù)設(shè)置任務(wù)的參數(shù)格式:
分又活、時册招、日者吁、月讳窟、星期 命令
使用crond設(shè)置任務(wù)的參數(shù)字段說明:
- 分鐘:取值 0~59 整數(shù)
- 小時:取值 0~23 任意整數(shù)
- 日期:取值 1~31 任意整數(shù)
- 月份:取值 1~12 任意整數(shù)
- 星期:取值 0~7 任意整數(shù)让歼,其中 0 與 7 均為星期日
- 命令:要執(zhí)行的命令或程序
示例:每周一、三丽啡、五的凌晨3點25分谋右,都需要使用 tar 命令把某個網(wǎng)站的數(shù)據(jù)目錄進行打包處理,使其作為一個備份文件
[root@study sh_folder]# crontab -e
no crontab for root - using an empty one
crontab: installing new crontab
[root@study sh_folder]# crontab -l
25 3 * * 1,3,5 /usr/bin/tar -czvf backup.taar.gz /home/wwwroot
參數(shù)的進一步說明:
- 逗號
,
:分別表示多個時間段(如"8,9,12"补箍,表示8月改执、9月和12月) - 減號
-
:表示一段連續(xù)時間周期(如字段"日"取值為"12-15",表示每月的12~15日) - 除號
/
:表示執(zhí)行任務(wù)的間隔時間(如"*/2" 表示每隔兩分鐘執(zhí)行一次程序)
示例:每周一至周五的凌晨1點鐘自動清空 /tmp 目錄內(nèi)的所有文件
注意:
- 在
crontab
服務(wù)的計劃任務(wù)參數(shù)中坑雅,所有命令一定要用絕對路徑的方式來寫辈挂,絕對路徑可以使用whereis
命令進行查詢- crond在內(nèi)的很多服務(wù)默認調(diào)用的是Vim編輯器,crond可以使用
#
號開頭上寫上注釋信息- 計劃任務(wù)中 "分" 字段必須要有數(shù)值裹粤,絕對不能為空或是*號
[root@study sh_folder]# whereis rm
rm: /usr/bin/rm /usr/share/man/man1/rm.1.gz
[root@study sh_folder]# crontab -e
crontab: installing new crontab
[root@study sh_folder]# crontab -l
# 每周一呢岗、三、五的凌晨3點25分蛹尝,都需要使用 tar 命令把某個網(wǎng)站的數(shù)據(jù)目錄進行打包處理,使其作為一個備份文件
25 3 * * 1,3,5 /usr/bin/tar -czvf backup.taar.gz /home/wwwroot
# 每周一至周五的凌晨1點鐘自動清空 /tmp 目錄內(nèi)的所有文件
0 1 * * 1-5 /usr/bin/rm -rf /tmp/*