#!/bin/sh

offWorkTime="19:00:00"
offWorkHour=${offWorkTime::}
offWorkMinute=${offWorkTime::}
offWorkSecond=${offWorkTime::} currentTime=`TZ='Asia/Hong_Kong' date +%H:%M:%S`
currentHour=${currentTime::}
currentMinute=${currentTime::}
currentSecond=${currentTime::} 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

shell倒计时下班时间的更多相关文章

  1. js-------》(小效果)实现倒计时及时间对象

    js实现倒计时及时间对象 JS实现倒计时效果代码如下: 1 <!doctype html> 2 <html> 3 <head> 4 <meta charset ...

  2. linux在shell中获取时间

    linux在shell中获取时间 获得当天的日期 date +%Y-%m-%d 输出: 2011-07-28 将当前日期赋值给DATE变量DATE=$(date +%Y%m%d) 有时候我们需要使用今 ...

  3. shell中的时间值提取(date)

    shell中的时间值提取(date) 方法1 # date +%F # date +%T # cat time.sh #!/bin/bash DATE=`date +%F | sed 's/-//g' ...

  4. Shell脚本中时间处理

    Shell脚本中时间处理 1.脚本内容 #!/bin/bash #环境变量 #设置环境变量和sql文件格式相符 source /etc/profileexport LD_LIBRARY_PATH=&q ...

  5. js实现倒计时及时间对象

    JS实现倒计时效果代码如下: <!doctype html> <html> <head> <meta charset="utf-8"> ...

  6. linux在shell date获取时间的相关操作

    获得当天的日期 date +%Y-%m-%d 输出: 2011-07-28 将当前日期赋值给DATE变量DATE=$(date +%Y%m%d) 有时候我们需要使用今天之前或者往后的日期,这时可以使用 ...

  7. shell脚本-获取时间

    获得当天的日期 date +%Y-%m-%d 输出: 2011-07-28 将当前日期赋值给DATE变量DATE=$(date +%Y%m%d) 有时候我们需要使用今天之前或者往后的日期,这时可以使用 ...

  8. 【转】linux在shell中获取时间 date巧用

    echo `date +%Y-%m-%d" %H:%M:%S"` 获得当天的日期 date +%Y-%m-%d 输出: 2011-07-28 date1=$(date --date ...

  9. shell中获取时间

    获得当天的日期 date +%Y-%m-%d 输出: 2011-07-28 将当前日期赋值给DATE变量DATE=$(date +%Y%m%d) 有时候我们需要使用今天之前或者往后的日期,这时可以使用 ...

随机推荐

  1. ubuntu软件源变更阿里源和arm板子变更国内源

    使用 lsb_release -c 命令,看看当前版本号,替换一下“bionic”字符 1.更改 /etc/apt/sources.list,更改之前先备份一下 deb http://mirrors. ...

  2. promise函数

    一.promise函数是干什么的 promise函数是解决异步编程调用代码逻辑编写过于复杂的问题的,当网络请求非常复杂时,就会出现回调地狱,这样如果将这些代码写在一起就会看起来很复杂,且不利于阅读,如 ...

  3. LinuxMySQL主从复制原理图

    主库开启dump线程 从bin-log中取出数据 从库开启io线程和sql线程   io线程不断从主库中的dump线程中那到最新的bin-log和io线程中的master-info的数据进行比较,如果 ...

  4. mybatis 动态Sql的模糊查询

    where teacher.tname like concat(concat(#{tName}),'%') 2:distinct的使用 下面先来看看例子: table    id name    1 ...

  5. java File类的使用以及一些函数

    package file; import java.io.File; import java.io.IOException; import org.junit.jupiter.api.Test; /* ...

  6. The mook jong

    The mook jong Accepts: 506 Submissions: 1281 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65 ...

  7. 【SpringBoot】 理解Spirng中的IOC原理

    前言 前文已经介绍了Spring Bean的生命周期,在这个周期内有一个重要的概念就是: IOC容器 大家也知道IOC是Sping 的重要核心之一,那么如何理解它呢,它又是产生什么作用呢?本文就IOC ...

  8. Workflow:Workflow 百科

    ylbtech-Workflow:Workflow 百科 工作流(Workflow),指“业务过程的部分或整体在计算机应用环境下的自动化”.是对工作流程及其各操作步骤之间业务规则的抽象.概括描述.在计 ...

  9. mybatis 查询一对一

    官方文档 Mapper接口 public interface UserMapper { User getUser(int userId); } public interface ArticleMapp ...

  10. 封装token

    let baseApiUrl = 'xxxx' var app = getApp(); let defaultHeaders = { 'Content-Type': 'application/json ...