语法: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任务,这里再也不试验了。