分页: 1 / 1

如何写个while循环。让程序在120秒之内每秒一执行。

发表于 : 2010-11-28 11:23
liucheng1513
如何写个while循环。让程序在120秒之内每秒一执行。程序是\cp -a /home/work/tmp/*.log /var/apache-tomcat-5.5.20/webapps/bustv/dl_stat
换句话就是在120秒内不断的让tmp的文件向dl_stat内复制。

Re: 如何写个while循环。让程序在120秒之内每秒一执行。

发表于 : 2010-11-28 11:46
gzbao9999
类似如此吧 如果想一秒执行一次,里面加个sleep 1, 不过很难保证一定1秒执行一次;

代码: 全选

startime=`date +%s`;
while true;do
now=`date +%s`;
s=$[now-startime];
echo $s; 
if [ $s -gt 120 ] ;then 
break;
fi 
done

Re: 如何写个while循环。让程序在120秒之内每秒一执行。

发表于 : 2010-11-28 21:02
phymal
while 1;do
\cp -a /home/work/tmp/*.log /var/apache-tomcat-5.5.20/webapps/bustv/dl_stat
sleep 120
done

不知道这样行不行啊。

Re: 如何写个while循环。让程序在120秒之内每秒一执行。

发表于 : 2010-11-29 19:43
qq405165798
liucheng1513 写了:如何写个while循环。让程序在120秒之内每秒一执行。程序是\cp -a /home/work/tmp/*.log /var/apache-tomcat-5.5.20/webapps/bustv/dl_stat
换句话就是在120秒内不断的让tmp的文件向dl_stat内复制。
shell不会写,算法一说,应该能满足你的要求

下面循环120次
cp src dis &
sleep 1

注意&是精髓.把cp放后台执行,可以保证sleep 能比较精确的暂停1S

Re: 如何写个while循环。让程序在120秒之内每秒一执行。

发表于 : 2010-12-01 13:52
Havanna
本身系统就有计划任务,为什么不去使用?

Re: 如何写个while循环。让程序在120秒之内每秒一执行。

发表于 : 2010-12-03 10:18
xzap

代码: 全选

 i=120;while ((i != 0));do cp -a /home/work/tmp/*.log /var/apache-tomcat-5.5.20/webapps/bustv/dl_stat;((i--));sleep 1;done