分页: 1 / 1

请教一种脚本的写法? 条件判定的

发表于 : 2009-08-28 10:32
abbott
是这样的,
要求在指定的时间间隔内运行,
比如每30s 或者1min运行一次。

判定很简单,
if [ $Active != 10 ]; then
cd /tmp
rm -fr new


但是有个问题;
是关于这个“监控”结束的问题。
要求是 如果rm 指令那一行,执行一次之后,
马上结束这个每个30s 或者1min运行一次的举措。

也就是说,成功执行if下面的语句后,彻底跳出脚本。
否则依旧作每30s Or 1min一次的判定,

另, 如何指定这个脚本多少时间间隔就运行一次呢?

服务器禁止我使用 crontab

Re: 请教一种脚本的写法? 条件判定的

发表于 : 2009-08-28 10:33
eexpress
那你sleep 10算了。

Re: 请教一种脚本的写法? 条件判定的

发表于 : 2009-08-28 10:44
abbott
sleep 10
我看看这个如何使用 先
谢谢了

Re: 请教一种脚本的写法? 条件判定的

发表于 : 2009-08-28 13:03
xzap
while :
do
if xxx
then
xxxx
break
fi
sleep 1m
done

Re: 请教一种脚本的写法? 条件判定的

发表于 : 2009-08-28 13:25
abbott
xzap 写了:while :
do
if xxx
then
xxxx
break
fi
sleep 1m
done
谢谢!

我这么修改的:
#!/bin/bash
ActiveNode=`showq | egrep 'Nodes Active' | cut -f 1 -d'o' | sed 's/^[ ]*//g'`
while ((2>1));
do
if [ $ActiveNode == 121 ];
then
cd /home/user/task
qsub newfile.pbs
break
fi
sleep 1m
done

开始的时候,wihle后面不写条件,
直接这样:
while;
do
....

脚本执行的时候,提示我while,command not found。。。。。

我加上条件后,脚本可以运行。
具体效果还待检测中。。。。


测试完毕,好用!

开始的时候,sleep 1m太久了

导致我的判定条件出了问题...

现在sleep 5s 就OK 了....

Re: 请教一种脚本的写法? 条件判定的

发表于 : 2009-08-28 16:11
xzap
while后面是冒号:阿,表示真,也就是无限循环,直到break退出

Re: 请教一种脚本的写法? 条件判定的

发表于 : 2009-08-28 18:34
abbott
谢谢 xzap 提醒 我也刚刚醒悟到.....