范例一:
请执
pi
算,然后在系
统闲
updatdb
的任
[root@study ~]#
echo "scale=100000; 4*a(1)" | bc
-
lq &
[root@study ~]#
echo "scale=100000; 4*a(1)" | bc
-
lq &
[root@study ~]#
echo "scale=100000; 4*a(1)" | bc
-
lq &
[root@study ~]#
echo "scale=100000; 4*a(1)" | bc
-
lq &
#
然后等待
约数
十秒的
时间
,之后再
一下工作
负载
的情
[root@study ~]#
uptime
19:56:45 up 2 days, 19:54, 2 users,
load average: 3.93, 2.23, 0.96
[root@study ~]#
batch
at>
/usr/bin/updatedb
at> <EOT>
job 4 at Thu Jul 30 19:57:00 2015
[root@study ~]#
date;atq
Thu Jul 30 19:57:47 CST 2015
4 Thu Jul 30
19:57:00 2015 b root
#
可以看得到,明明
时间
了,
却没
实际执
at
的任
[root@study ~]#
jobs
[1] Running echo "scale=100000; 4*a(1)" | bc
-
lq &
[2] Running echo "scale=100000; 4*a(1)" | bc
-
lq &
[3]
-
Running echo
"scale=100000; 4*a(1)" | bc
-
lq &
[4]+ Running echo "scale=100000; 4*a(1)" | bc
-
lq &
[root@study ~]#
kill
-
9 %1 %2 %3 %4
#
这时
先用
jobs
找出背景工作,再使用
kill
除掉四
背景工作后,慢慢等待工作
负载
的下½
[root@study ~]#
uptime; atq
20:01:33 up 2 days, 19:59, 2 users,
load average: 0.89, 2.29, 1.40
4 Thu Jul 30 19:57:00 2015 b root
[root@study ~]#
uptime; atq
20:02:52 up 2 days, 20:01, 2 users, load average: 0.23, 1.75, 1.28
#
19:59
,由于
loading
是高于
0.8
,因此
atq
可以看得到
at job
是持
再等待
中喔!
#
但是到了
20:01
loading
½低到
0.8
以下了,所以
atq
行完
毕啰
使用
uptime
可以观察到
1, 5, 15
分钟的『平均工作负载』量,因为是平均值,所以当我们如上表删
除掉四个工作后,工作负载不会立即½低,
需要一小段时间让这个
1
分钟平均值慢慢回复到½½
0
啊!当小于
0.8
之后的『整分钟时间』时,
atd
就会½
batch
的工作执行掉了!
什么是『整分钟时间』呢?不论是
at
还是底下要½绍的
crontab
,他们最小的时间单位是『分钟』,
所以,基本上,他们的工作是『每分钟检查一次』来处理的!
就是整分
(
秒为
0
的时候
)
,这样了
½乎?同时,你会发现其实
batch
也是使用
atq/atrm
来管理的!