加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

如何在bash / linux脚本中执行相同的循环1小时?

发布时间:2020-12-15 22:30:44 所属栏目:安全 来源:网络整理
导读:我想以随机间隔打开和关闭一些网页一小时. 到目前为止,我已经写了内脏 FILE=webpagesTIMES=0while test $TIMES -lt 10do #Picks random line(Website) from FILE TEMPWEB=`shuf -n 1 $FILE` echo "Opening" $TEMPWEB #Opens TEMPWEB xdg-open $TEMPWEB sleep
我想以随机间隔打开和关闭一些网页一小时.

到目前为止,我已经写了内脏

FILE=webpages
TIMES=0
while test $TIMES -lt 10
do
    #Picks random line(Website) from FILE
    TEMPWEB=`shuf -n 1 $FILE`
    echo "Opening" $TEMPWEB
    #Opens TEMPWEB
    xdg-open $TEMPWEB
    sleep 10
    #Kills firefox
    ps -e | grep firefox | sed 's/(.[0-9]*).*/1/' | xargs kill
    TIMES=$(($TIMES+1))
done

所以我错过了这个条件.
我想要的东西:

TIMER = 0h 0m 0s
while( TIMER < 1 h)
   ....
done

这可能吗?

PS.什么是随机数的命令?

解决方法

一定.尝试:

#!/bin/bash
START=`date +%s`
while [ $(( $(date +%s) - 3600 )) -lt $START ]; do
    ....
done

date%s显示自1970年以来的当前时间(以秒为单位).循环计算一小时前的当前日期,并检查它是否超过了开始时间.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读