linux17:时间间隔计算脚本练习——距离你的生日还有多少天

linux17:时间间隔计算脚本练习——距离你的生日还有多少天需求距离一个未来的日子还有多少天距离一个过去的日子过去多少天#!/bin/bash#name——timeDistance.sh#function#input a date, to calculate how many days to this day#2022.1.18 daxiongread -p “please input your date like YYYYMMDD ex>20150716 : ” date2#test whether or not have

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

需求

距离一个未来的日子还有多少天
距离一个过去的日子过去多少天

主要是用一个date命令

echo $(($(date --date="2022/01/01" +%s)/86400+1))

脚本写法:

#!/bin/bash

#name——timeDistance.sh


#function

#input a date, to calculate how many days to this day
#2022.1.18 daxiong


read -p  "please input your date like YYYYMMDD ex>20150716 : "  date2

#test whether or not have eight numbers
date_test=$(echo ${date2} | grep '[0-9] \ {8\} ')
if [ "${date_test}" == "" ] ; then
	echo "you must input the right date format... "
	exit 1
fi

#calculate
declare -i date_des=$(date --date="${date2}" +%s)
declare -i date_now=$(date +%s)
declare -i distanceSec=$((${date_des}-${date_now}))

declare -i distanceDay=$(( ${distanceSec}/60/60/24 ))

if [ "$distanceDay" -gt 0 ]; then
        echo "That day hasn't come yet. "
        echo "You have $((${distanceDay}+1)) days."

elif [ "$distanceDay" -eq 0 ]; then
        echo "Just do it now!"
else [ "$distanceDay" -lt 0 ] 
        echo "That day has passed, $((0-${distanceDay})) days ago. "
fi
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/168465.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 无人驾驶安全报告分析

    摘要随着经济的快速发展,各国汽车保有量急剧增加,促使城市路况更加严峻繁杂,城市交通正面临着前所未有的巨大压力。加之疲劳驾驶、酒后驾驶等人为因素,使世界各国的交通事故率逐年上升,甚至多于世界大战死亡人数。随着汽车技术、信息通信技术与智能控制技术的高效融合,集自动控制、人工智能、体系结构视觉设计等众多技术于一体的无人驾驶汽车应运而生。通过在车辆内安装智能操纵控制系统与感应设备来获取信息用以控制车…

    2022年4月7日
    41
  • SqlServer数据库备份与还原

    SqlServer数据库备份与还原最近需要给程序新增功能,用于将旧格式的数据转换为新格式,同时删除旧格式的数据(新旧格式的数据库表有部分重叠,同一份数据无法同时存在新旧格式的数据),由于测试环境中的测试数据不多,功能调试几次之后就没有旧格式的数据做测试了,因此想到在功能调试前先将测试数据库备份,然后功能调试之后再将测试数据库还原,这样就可以重复的进行功能调试。  数据库备份过程比较顺利,但是还原过程中出现错误,无论是还原数据库还是还原数据库文件都报错

    2022年5月15日
    40
  • 【机器学习算法】线性回归算法

    【机器学习算法】线性回归算法文章目录线性回归回归问题回归和分类预测未来机器学习实现预测的流程线性方程权值调整最简单的回归问题——线性回归问题利用线性回归进行预测的极速入门线性回归的算法原理拟合线性回归算法的数学解析1.假设函数的数学表达式解析线性回归回归问题线性方程偏差度量权值更新回归问题两百年前,与达尔文同时代的统计学家高尔顿在研究父代与子代的身高关系时,发现一种“趋中效应”:如果父代身高高于平均值,则子代具有更高概率比他父亲要矮,简单来说就是身高回归平均值。“回归”一词也由此而来。在回归的世界里,万物的发展轨

    2022年8月21日
    5
  • 如何查看jdk版本号_jdk与tomcat版本

    如何查看jdk版本号_jdk与tomcat版本背景:最近有一个springboot项目要发布到很老的一台服务器上,该台服务器是XP200232位系统,并且springboot微服务需要连接服务器上的accessdb,因此需要有对应的jdk,看了看网上的查看JDK版本很多都不靠谱(中文技术网站都是相互抄袭),特地总结了一下:方法1:最基本的,下载jdk的时候应该知道自己下的什么版本,在安装jdk的时候就在安装目录里写清楚版本号以便将…

    2022年9月23日
    2
  • c# List去重

    c# List去重需求:对List集合中的元素去重。实现:有三种方式可以使用-使用Linq中distinct()方法-借助hashset-使用for循环遍历,这种方法在数据量大时,运行速度比较慢代码示例使用distinct()//使用distinct()List<string>lst1=newList<string>(){“as”,”lio”,”sdrf”,”asd”,”lio”};varr.

    2022年5月9日
    310
  • 【电子书下载】《Android应用程序开发与典型案例》完整版!!

    【电子书下载】《Android应用程序开发与典型案例》完整版!!图书简介:《android应用程序开发与典型案例》共23章,内容包含两大部分。第一部分是android程序设计基础,在介绍android环境搭建以及android系统基本控件和组件后,详细介绍了android系统应用编程中典型的技术,比如,android中的图形图像、多媒体编程、gps定位与地图编程等;第二部分是android程序ui设计,从手机软件的交互设计谈起,介绍了android用户界面

    2022年6月29日
    23

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号