1, sleep 300 && command
2, at命令很容易使用, 一个简单使用at的例子类似于这样:
$ at 5:00PM # 当前时间+5分种
at> date >> thisfile
at> <EOT>
在输入 at 和应该运行命令的时间,at 会提示你在设定时间会运行该命令(此例中是 date 命令)。输入 ^D(Ctrl + d)来完成请求。
假设我们在下午 5 点之前设置这个 at 命令,那么这个日期和时间将在当天下午 5 点添加到名为 thisfile 文件的末尾。否则,该命令将在第二天下午 5 点运行。 《Linux就该这么学》 学习更多linux命令
‘贰’ linux中at的执行结果放在哪里
之前说了使用crontab实现定时执行任务,假如我们只是想要让特定任务运行一次,那么,这备旅时候就要用到at监控程序了。
一、at服务
cron是一个linux下 的定时执行工具,可以在无需人工干预的情况下运行作业。
service atd start //启动服务
service atd stop //关闭服务
service atd restart //重启服务
service atd reload //重新载入配置
service atd status //查看服务状态
二、at在配置文件:
at类似打仿孝凳印进程,会把任务放到/var/spool/at目录中,到指定时间运行它 。at命令相当于另一个shell,运行at time命令时,它发送一个个命令,可以输入任意命令或者程序。
三、参数详解
at [-V] [-q x] [-f file] [-mldbv] time
at -c job ...
atq [-V] [-q x]
atrm [-V] job ...
-V : 印出版本编号
-q : 使用指定的伫列(Queue)来储存,at 的资料是存放在所谓的 queue 中,使用者可以同时使用多个 queue,而 queue 的编号为 a, b, c... z 以及 A, B, ... Z 共 52 个
-m : 即使程序/指令执行完成后没有输出结果, 也要寄封信给使用者
-f file : 读入预先写好的命令档。使用者不一定要使用交谈模式来输入,可以先将所有的指定先写入档案后再一次读入 网络应用
-l : 列出所有的指定 (使用者也可以直接使用 atq 而不用 at -l)
-d : 删除指定 (使用者也可以直接使用 atrm 而不用 at -d)
-v : 列出所有已经完成但尚未删除的指定
at命令执行流程
# at 2:05 tomorrow
at>/home/kyle/do_job
at> Ctrl+D
AT Time中的时间表示方法
-----------------------------------------------------------------------
时 间 例子 说明
-----------------------------------------------------------------------
Minute at now + 5 minutes 任务在5分钟后运行
Hour at now + 1 hour 任务在1小时后运行
Days 慎清 at now + 3 days 任务在3天后运行
Weeks at now + 2 weeks 任务在两周后运行
Fixed at midnight 任务在午夜运行
Fixed at 10:30pm 任务在晚上10点30分
Fixed at 23:59 12/31/2018 任务在2018年12月31号23点59分
‘叁’ linux中at命令
at命令
at:计划任务,在特定的时间执行某项工作,在特定的时间执行一次。
格式:at+时间
例1:date //查看系统当前时间
at 时间 //系统计划启动任务时间
at> date >/root/1.txt //date:系统计划启动任务时间执行date命令;/root/1.txt执行命令写入位
置和文件
ctrl+d退出 //退出at命令
例2:date //查看系统当前时间
at 时间 //系统计划启动任务时间
at> init 0 /root/2.txt //init 0:系统计划启动任务时间执行init 0(关机)命令;/root/2.txt执
行命令写入位置和文件
例3:在固定时间内添加一个用户(这时建立的用户没有密码)
#at 12:00(时间) //at命令设定12:00执行一项操作
at>useradd aaa //在at命令里设定添加用户aaa
ctrl+d //退出at命令
tail -f /etc/passwd //查看/etc/passwd文件后十行是否增加了一个用户aaa
计划任务结束后,查看任务是否写入文件中,可以用cat或vi命令查看。
格式:cat(vi)+(路径)文件名
例1:cat(vi) 1.txt
日 2月 6 09:21:28 CST 2005
计划任务设定后,在没有执行之前我们可以用atq命令来查看系统没有执行工作任务。
格式:atq
例:atq
1 2005-02-06 09:23 a root
启动计划任务后,如果不想启动设定好的计划任务可以使用atrm命令删除。
格式:atrm+任务号
例:atrm 1 //删除计划任务1
atq //查看计划任务是否删除
还可以进入到/var/spool/at目录里把计划任务删除,计划任务的文件都保存在该目录里,可以用rm -f
文件名来删除(以文件的形式删除计划任务,因为计划任务是以文件形式保存在该目录中)
例:#cd /var/spool/at //进入到/var/spool/at目录中
ls //显示目录中所有文件
rm -f a0000a0119b0df //删除计划任务
在通常情况下,超级用户都可以使用这个命令。对于其他用户来说,能否可以使用就取决于两个文
件:/etc/at.allow和/etc/at.deny。
当“用户名”写入/etc/at.deny中,用户不能执行at命令(管理员限制用户使用at命令)。
例:useradd text //新建一个text用户
ls /etc/at.deny //查看at.deny文件内容
vi /etc/at.deny //对at.deny文件进行编辑
text //对at.deny文件进行编辑,写入text用户名,进行at命令限制,然后wq(保存退出)
cat /etc/at.deny //显示at.deny文件内容
su - text //切换到text用户
at 12:00 //text用户执行at命令,如果被限制则出现下面的提示。
You do not have permission to use at.你不允许使用at这个命令
at.allow比at.deny优先级高
at.allow文件中有的用户可以执行at,没有则不能。
linux操作系统在执行用户是否可以执行at命令时,先看at.allow文件没有才看at.deny文件。
注意:linux操作系统默认没有/etc/at.allow文件。
例:ls /etc/at.allow //查看是否已经建立at.allow文件
touch /etc/at.allow //建立/etc/at.allow文件
vi /etc/at.allow //对at.allow文件进行编辑
text //对at.allow文件进行编辑,写入text用户名,该用户名可以执行at命令,然后wq(保存退出)。
su - text //切换到text用户
at 12:00 //text用户执行at命令,若不出现上面所说的提示就可以进行at命令设定了。
at命令格式
at HH:MM YYYY-MM-DD //HH(小时):MM(分钟) YYYY(年)-MM(月份)-DD(日)
例:at 4:00 2004-11-27
HH[am pm]+D(天) days //HH(小时)[am(上午)pm(下午)]+days(天)
例:4pm + 3days :3天以后下午4:00执行at命令设定的计划任务。
‘肆’ linux.at 命令怎么用
一次性定时计划任务的at命令的用法!
1.命令格式:
at[参数][时间]
2.命令功能:
在一个指定的时间执行一个指定任务,只能执行一次,且需要开启atd进程(
ps -ef | grep atd查看, 开启用/etc/init.d/atd start or restart; 开机即启动则需要运行 chkconfig --level 2345 atd on)。
3.命令参数:
-m 当指定的任务被完成之后,将给用户发送邮件,即使没有标准输出
-I atq的别名
-d atrm的别名
-v 显示任务将被执行的时间
-c 打印任务的内容到标准输出
-V 显示版本信息
-q<列队> 使用指定的列队
-f<文件> 从指定文件读入任务而不是从标准输入读入
-t<时间参数> 以时间参数的形式提交要运行的任务 《Linux就该这么学》
使用实例:
实例1:三天后的下午 5 点锺执行 /bin/ls
命令:
at 5pm+3 days
输出:
[root@localhost ~]# at 5pm+3 days
at> /bin/ls
at> <EOT>
job 7 at 2013-01-08 17:00
[root@localhost ~]#
说明:
实例2:明天17点钟,输出时间到指定文件内
命令:
at 17:20 tomorrow
输出:
[root@localhost ~]# at 17:20 tomorrow
at> date >/root/2013.log
at> <EOT>
job 8 at 2013-01-06 17:20