語法:at <時間描述>
例:
◦ at 6pm Monday
◦ at now + 5 minutes vim
◦ at 13:15 05/12/2010 spa
------------------------at計劃任務-------------------------- [chen@localhost 桌面]$ su - root 密碼: [root@localhost ~]# service atd status #先查看系統中atd服務是否運行 atd (pid 2042) 正在運行... [root@localhost ~]# chkconfig --list|grep atd #也能夠經過這種方式查看,當前系統運行在5級別,默認是運行的 atd 0:關閉 1:關閉 2:關閉 3:啓用 4:啓用 5:啓用 6:關閉 [root@localhost ~]# at 21:00 #在天天的21:00點執行下面的操做 at> cat /etc/passwd >> /passwd.backup at> <EOT> #ctrl+D結束任務 job 1 at 2012-08-07 21:00 #系統會分配一個job號,這裏是1 [root@localhost ~]# atq #atq查詢當前用戶的at計劃任務 1 2012-08-07 21:00 a root #每一個用戶默認均可以指定本身的at計劃任務,可是root能夠在/etc/at.deny中寫入用戶名 #使這些用戶不能使用at計劃任務,寫入的時候每一個用戶名佔一行 [root@localhost ~]# vim /etc/at.deny chen user1 #指定chen和user1不能使用at計劃任務 [root@localhost ~]# exit logout [chen@localhost 桌面]$ at 10:00 You do not have permission to use at. #chen不能使用at了 [chen@localhost 桌面]$ su - user1 密碼: [user1@localhost ~]$ at 10:00 You do not have permission to use at. #user1也不能使用at [user1@localhost ~]$ su - user2 密碼: [user2@localhost ~]$ at 10:00 #可是user2能夠,由於user2沒有被寫入/etc/at.deny中 at> <EOT> job 2 at 2012-08-08 10:00 [user2@localhost ~]$ exit logout [user1@localhost ~]$ exit logout [chen@localhost 桌面]$ su - root 密碼: [root@localhost ~]# vim /etc/at.deny chen user1 #這裏把user1刪掉,保存退出。 [root@localhost ~]# su - user1 [user1@localhost ~]$ at 10:00 at> <EOT> job 3 at 2012-08-08 10:00 #能夠看到user1能夠建立at計劃任務了 [user1@localhost ~]$ exit logout [root@localhost ~]# exit logout [chen@localhost 桌面]$ at 10:00 #chen仍是不能夠的 You do not have permission to use at. [chen@localhost 桌面]$ su - root 密碼: [root@localhost ~]# su - user1 #再切換到user1 [user1@localhost ~]$ atq 3 2012-08-08 10:00 a user1 [user1@localhost ~]$ atrm 3 #能夠經過atrm job號刪除一個計劃任務 [user1@localhost ~]$ atq #能夠看到job 3任務被刪除。 [user1@localhost ~]$ exit logout [root@localhost ~]#
corn的特殊時間表示方法
* 表示該範圍內到任意時間
, 表示間隔的多個不連續時間
- 表示一個連續的時間範圍
/ 指定間隔的時間頻率
示例:
時間的格式是從左到右依次爲:分、時、日、月、星期、指令
0 17 * * 1-5 週一到週五天天的17:00
30 8 * * 1,3,5 周1、3、五天天到8:30
0 8-18/2 * * * 天天的8到18點,每隔兩小時
0 * */3 * * 每隔3天
注意:
1.時間中沒有年
2.時間格式第一項分鐘不能爲*,其餘均可以 rest
/sbin/service crond start #啓動服務 /sbin/service crond stop #關閉服務 /sbin/service crond restart #重啓服務 /sbin/service crond reload #從新載入配置
----------------------------cron計劃任務------------------------------ [root@localhost ~]# service crond status crond (pid 3155) 正在運行... [root@localhost ~]# chkconfig --list|grep crond crond 0:關閉 1:關閉 2:啓用 3:啓用 4:啓用 5:啓用 6:關閉 [root@localhost ~]# /etc/init.d/crond restart #能夠這樣重啓服務 中止 crond: [肯定] 正在啓動 crond: [肯定] [root@localhost ~]# crontab -e -u chen #編輯chen這個用戶的cron計劃任務 no crontab for chen - using an empty one crontab: installing new crontab You have mail in /var/spool/mail/root 0 17 * * 1-5 tar cvfz /tmp/log.tar.gz /var/log/* #寫入這句話,每週一到週五的17:00備份/var/log/* [root@localhost ~]# exit logout [chen@localhost 桌面]$ crontab -l #普通用戶能夠經過這樣查看本身的計劃任務 0 17 * * 1-5 tar cvfz /tmp/log.tar.gz /var/log/* [chen@localhost 桌面]$ crontab -e -u user1 #普通用戶不能指定其餘用戶的cron計劃任務 must be privileged to use -u [chen@localhost 桌面]$ su - user1 密碼: [user1@localhost ~]$ crontab -e #普通用戶只能加-e編輯本身的cron計劃任務 no crontab for user1 - using an empty one crontab: installing new crontab 0 15 * * 1,3,5 ls /etc/* >> /etc.backup [user1@localhost ~]$ crontab -l #查看當前的cron任務 0 15 * * 1,3,5 ls /etc/* >> /etc.backup [user1@localhost ~]$ ls /var/spool/cron/ #全部用戶的cron任務默認保存在/var/spool/cron/下面並以用戶名命名 ls: 沒法打開目錄/var/spool/cron/: 權限不夠 #可是普通用戶不能查看,這必須的! [user1@localhost ~]$ exit logout [chen@localhost 桌面]$ su - root 密碼: [root@localhost ~]# ls /var/spool/cron/ #root就能夠看了,全部人的都在這裏 chen user1 [root@localhost ~]# cat /var/spool/cron/user1 #cat下能夠看到其中的內容 0 15 * * 1,3,5 ls /etc/* >> /etc.backup #最後試驗下root能夠刪除普通用戶的cron任務和普通用戶刪除本身的計劃任務 [root@localhost ~]# crontab -l -u chen #root查看普通用戶的任務 0 17 * * 1-5 tar cvfz /tmp/log.tar.gz /var/log/* [root@localhost ~]# crontab -r -u chen #root刪除chen普通用戶的任務 [root@localhost ~]# crontab -l -u chen no crontab for chen #已經被刪除了 [root@localhost ~]# su - user1 [user1@localhost ~]$ crontab -l #查看本身的任務 0 15 * * 1,3,5 ls /etc/* >> /etc.backup [user1@localhost ~]$ crontab -r #刪除本身的任務 [user1@localhost ~]$ crontab -l no crontab for user1 #已經被刪除了 最後總結如下: root能夠建立沒普通用戶cron計劃任務 crontab -e -u chen 普通用戶只能建立本身的cron計劃任務 crontab -e 全部用戶的cron任務都默認保存在/var/spool/cron/下面,以各自的用戶名命名,只有root用戶能夠查看 root還能夠命令查看具體用戶的任務 crontab -l -u chen 普通用戶能夠查看本身的cron計劃任務 crontab -l root能夠刪除普通用戶的任務 crontab -r -u chen 普通用戶只能刪除本身的cron計劃任務 crontab -r 和at計劃任務同樣,root能夠編輯/etc/cron.deny,將用戶名寫入這個文件,一行一個用戶名,這樣能夠禁止該用戶使用cron任務,這裏再也不試驗了。