Bash,短时间等待,重复执行某个命令

    技术2022-05-20  38

    wget:有时候下载,只是前1分钟有数据传输,之后便是无响应。为了利用这个突发传输,增加请求的频率,可以编写脚本,也可以使用wget -T 20 -c url,20秒等待,缺省是900秒。

    脚本如下,虽然可以用wget的T参数替代,但方法可以借鉴。

    for i in {1..4};do   echo $i   wget -c url &   sleep 60   j=$(ps -a | grep -ir wget )    #返回wget的PID   if [ "$j" != "" ] ;then      set $j        #提取PID      kill $1       #定时关闭wget   else      echo "No wget running"        fi  done

     

    下载某个网页中300多链接文件

    IFS=" "          for i in $(grep -ir  "/.asc"  htmlsourcefile ) ; do  #以换行符断句,获得包含下载文件的语句,   echo $i   j=${i##*href=/"}                                        #获得路径     n=http://www.url.com${j%%/"*}       #加前缀   o=${n##*/}                                 #获得链接文件名,该名与实际文件名可能不同   echo n $n   echo o $o   k=${i##*/"/>}                    #提取实际文件名   l=${k%%/<*}                   #提取实际文件名     echo l $l   wget -T 20 $n   mv $o $l   #将链接文件名改为实际文件名 done

     

     

    这是htmlsourcefile片段

    <tr> <td><a href="/product/LTC3411A" mce_href="product/LTC3411A">LTC3411A - 1.25A, 4MHz, Synchronous Step-Down DC/DC Converter</a></td> <td sorttable_customkey="1298397337">Feb 22nd, 2011</td> <td><a οnclick="javascript:urchinTracker('/docs/Software and Simulation/LTC3411A.asc')" href="/docs/29119" mce_href="docs/29119">LTC3411A.asc</a></td> </tr>


    最新回复(0)