一:一次性的計劃任務
at 臨時的建立計劃任務
如:at 23:00
at> shutdown -h now
按Ctrl +d 結束
查看:
atq 或at -l #查看當前的所有計劃任務
刪除:
atrm 或at -d +計劃任務的job號 # 刪除計劃任務
二:at的時間表示方法
HH:MM //18:30
midnight //0點 (午夜)
noon //12點 (中午)
teatime //16點(下午4點)
AM 或 PM後綴指定一天的上午或下午。 //at 2:00 pm
MMDDYY 、 MM/DD/YY 或 DD.MM.YY
now + 計數 時間單位 的式樣,這裏的時間單位能夠是 minutes 、hours 、 days 或 weeks, //at now + 3 hours(從如今開始起三個小時後)
三:at服務的啓動及查看
rpm -q at //查看at是否安裝
rpm -ql at //查看at生成的文件列表
rpm -qc at //查看at的配置文件
centos7服務的查看
systemctl status atd //查看at的運行狀態
systemctl start atd //啓動at服務
systemctl restart atd //重啓at服務
systemctl enable atd //開機自啓
systemctl disable atd //開機禁用
centos6服務查看
service atd status //查看at的運行狀態
service atd start //啓動at服務
service atd restart //重啓at服務
chkconfig atd on //開機自啓
chkconfig atd off //開機禁用
at的白名單和黑名單
/etc/at.allow //默認不存在
/etc/at/deny //黑名單,添加用戶進去以後此用戶就不能使用at命令
四:週期性的計劃任務
crontab //建立週期性的計劃任務
crontab的用法
選項:
-e // 編輯當前用戶的週期性計劃任務
-l //列出全部的計劃任務
-u //指定用戶
-r //刪除計劃任務
例: crontab -e
*/5 * * * * tar -cvzf /etc/`date +\%F`_etc.tar.gz /etc/hosts //這裏的命令通常用絕對路徑,避免出錯
刪除計劃任務
crontab -u test -r //查看test的疾患任務
週期性計劃任務的啓動及服務狀態查看
查:
rpm -q crontabs //查看是否安裝
rpm -ql crontabs //查看生成的文件列表
rpm -qc crontabs //查看配置文件列表
centos7服務;
systemctl status crond //查看狀態
systemctl start crond //啓動
systemctl restart crond //重啓
systemctl enable crond //開機自啓
systemctl disable crond //開機禁止
centos6服務
service crond status //查看狀態
service crond start //啓動
service crond restart //重啓
chkconfig crond on //開機自啓
chkconfig crond off //開機禁止
crontab的白名單和黑名單
/etc/corn.allow //白名單
/ect/cron.deny //黑名單 ,加入的用戶不能使用crontab作計劃任務
crontab的配置
cat /etc/crontab
SHELL=/bin/bash //shell環境
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
格式:分 時 日 月 周 shell