zoukankan      html  css  js  c++  java
  • shell倒计时下班时间

    #!/bin/sh
    
    offWorkTime="19:00:00"
    offWorkHour=${offWorkTime:0:2}
    offWorkMinute=${offWorkTime:3:2}
    offWorkSecond=${offWorkTime:6:2}
    
    currentTime=`TZ='Asia/Hong_Kong' date +%H:%M:%S`
    currentHour=${currentTime:0:2}
    currentMinute=${currentTime:3:2}
    currentSecond=${currentTime:6:2}

    second=$((offWorkSecond - currentSecond))
    if [[ $second -lt 0 ]]
    then
      second=$((second + 60))
      offWorkMinute=$((offWorkMinute - 1))
      if [[ $offWorkMinute -lt 0 ]]
      then
        offWorkMinute=$((offWorkMinute + 60))
        offWorkHour=$((offWorkHour - 1))
      fi
    fi

    minute=$((offWorkMinute - currentMinute))
    if [[ $minute -lt 0 ]]
    then
      minute=$((minute + 60))
      offWorkHour=$((offWorkHour - 1))
    fi

    hour=$((offWorkHour - currentHour))

    while true
    do
      second=$((second - 1))
      if [[ $second -lt 0 ]]
      then
        second=$((second + 60))
        minute=$((minute - 1))
        if [[ $minute -lt 0 ]]
        then
          minute=$((minute + 60))
          hour=$((hour - 1))
        fi
      fi

      if [[ $second -lt 10 ]]
      then
        secondStr="0$second"
      else
        secondStr="$second"
      fi

      if [[ $minute -lt 10 ]]
      then
        minuteStr="0$minute"
      else
        minuteStr="$minute"
      fi

      if [[ $hour -lt 10 ]]
      then
        hourStr="0$hour"
      else
        hourStr="$hour"
      fi

      tput cup 0 0
      tput civis
      echo $(tput setaf 1; tput setab 6; tput bold)"offworkTime: $hourStr:$minuteStr:$secondStr"$(tput sgr0)

      if [[ $hour -eq 0 && $minute -eq 0 && $second -eq 0 ]]
      then
        break
      fi

      sleep 1s
    done
  • 相关阅读:
    个人博客作业-软件案例分析1 博客园和CSDN
    第一次结对项目
    个人项目作业(1)
    个人博客作业(1)
    第一次个人作业
    面向对象第四单元总结和期末总结
    面向对象第三单元总结
    面向对象第二单元总结
    UML——BUAA_OO 第四单元总结 & 课程总结
    JML——BUAA_OO 第三单元总结
  • 原文地址:https://www.cnblogs.com/sssblog/p/10186398.html
Copyright © 2011-2022 走看看