date详解,date操作的案例,转载:https://www.cnblogs.com/kimbo/p/7102203.html

本文主要是介绍date详解,date操作的案例,转载:https://www.cnblogs.com/kimbo/p/7102203.html,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

格式:date [选项] … [+格式]
选项说明:-d ,–date=字符串   显示指定字符串所描述的时间
这里写图片描述

案例1:

#!/bin/bash

##1. 获取当前系统时间 YYYY-MM-DD HH:MM:SS
v_time_eq=`date "+%F %T"`
v_time=`date "+%Y-%m-%d %H:%M:%S"`echo -e "系统当前时间v_time: ${v_time}, v_time_eq: ${v_time_eq} \tv_time 等价于 v_time_eq, 但是v_time 的格式,可读性更强,建议使用。"
##2. 获取指定格式的日期 YYYY-MM-DD, YYYYMMDD, YYYY/MM/DD
v_date=`date -d "$v_time" +%Y%m%d`
v_date_dir=`date -d "$v_time" +%Y/%m/%d`
v_date_hor=`date -d "$v_time" +%Y-%m-%d`echo "系统当前日期v_date: ${v_date}, v_date_dir: ${v_date_dir}, v_date_hor: ${v_date_hor}。感受下不同的格式。"
##3.获取前一天、后一天的日期 YYYYMMDD
v_date_ago_1=`date -d "$v_date -1 day" +%Y%m%d`
v_date_future_1=`date -d "$v_date 1 day" +%Y%m%d`echo "前一天v_date_ago_1: ${v_date_ago_1}, 后一天v_date_future_1: ${v_date_future_1}"
##4.获取前一个月、后一个月的日期 YYYYMMDD
v_date_ago_1month=`date -d "$v_date -1 month" +%Y%m%d`     #遇到2月闰月的时候,会有问题,比如20170329,前一个月会变成20170301
v_date_ago_1month_leap=`date -d "20170329 -1 month" +%Y%m%d`
v_date_future_1month=`date -d "$v_date 1 month" +%Y%m%d`echo "前一个月日期v_date_ago_1month: ${v_date_ago_1month}, 后一个月日期v_date_future_1month: ${v_date_future_1month}"echo "闰2月的时候,会有问题,比如20170329 的前一个月返回的是: ${v_date_ago_1month_leap}, 并不是20170228"
##5.获取前一年、后一年的日期 YYYYMMDD
v_date_ago_1year=`date -d "$v_date -1 year" +%Y%m%d`
v_date_future_1year=`date -d "$v_date 1 year" +%Y%m%d`echo "前一年的日期v_date_ago_1year:${v_date_ago_1year}, 后一年的日期v_date_future_1year: ${v_date_future_1year}"
##6.获取系统当前月份 月初日期 YYYYMMDD
v_month=`date -d "$v_date" +%Y%m`01
v_month_ago_1=`date -d "$v_month -1 month" +%Y%m`01
v_month_future_1=`date -d "$v_month 1 month" +%Y%m`01echo "系统当前月份月初日期v_month:${v_month},上个月月初日期v_month_ago_1:${v_month_ago_1}, 下个月月初日期v_month_future_1:${v_month_future_1}"

运行结果:
这里写图片描述

例子2: 对于单独使用小时、分钟时,会有08,09这样的出现,需要转换成10进制,才能进行计算。

#!/bin/bash
#当小时、分钟是08、09时,计算出现错误,value too great for base (error token is "08") 数值太大不可为算数进制的基 
#原因是shell将08、09当成了8进制数,而8进制数中合法的最大的数字是7,须让Shell强制将08、09当成10进制来解释,在前面加上10#v_hour=`date -d "20170701 08:05:00" +%H`
v_min=`date -d "20170701 08:05:00" +%M`echo "v_hour is ${v_hour}"
echo "v_min is ${v_min}"## 转换成10进制,才能计算
let v_hour=10#${v_hour}
let v_min=10#${v_min}## 计算总的分钟数
let v_total_min=${v_hour}*60+${v_min}
echo "v_total_min is ${v_total_min}"

结果:
这里写图片描述

这篇关于date详解,date操作的案例,转载:https://www.cnblogs.com/kimbo/p/7102203.html的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/918218

相关文章

CSS3 布局样式及其应用举例

《CSS3布局样式及其应用举例》CSS3的布局特性为前端开发者提供了无限可能,无论是Flexbox的一维布局还是Grid的二维布局,它们都能够帮助开发者以更清晰、简洁的方式实现复杂的网页布局,本文给... 目录深入探讨 css3 布局样式及其应用引言一、CSS布局的历史与发展1.1 早期布局的局限性1.2

使用animation.css库快速实现CSS3旋转动画效果

《使用animation.css库快速实现CSS3旋转动画效果》随着Web技术的不断发展,动画效果已经成为了网页设计中不可或缺的一部分,本文将深入探讨animation.css的工作原理,如何使用以及... 目录1. css3动画技术简介2. animation.css库介绍2.1 animation.cs

CSS引入方式和选择符的讲解和运用小结

《CSS引入方式和选择符的讲解和运用小结》CSS即层叠样式表,是一种用于描述网页文档(如HTML或XML)外观和格式的样式表语言,它主要用于将网页内容的呈现(外观)和结构(内容)分离,从而实现... 目录一、前言二、css 是什么三、CSS 引入方式1、行内样式2、内部样式表3、链入外部样式表四、CSS 选

C#特性(Attributes)和反射(Reflection)详解

《C#特性(Attributes)和反射(Reflection)详解》:本文主要介绍C#特性(Attributes)和反射(Reflection),具有很好的参考价值,希望对大家有所帮助,如有错误... 目录特性特性的定义概念目的反射定义概念目的反射的主要功能包括使用反射的基本步骤特性和反射的关系总结特性

使用雪花算法产生id导致前端精度缺失问题解决方案

《使用雪花算法产生id导致前端精度缺失问题解决方案》雪花算法由Twitter提出,设计目的是生成唯一的、递增的ID,下面:本文主要介绍使用雪花算法产生id导致前端精度缺失问题的解决方案,文中通过代... 目录一、问题根源二、解决方案1. 全局配置Jackson序列化规则2. 实体类必须使用Long封装类3.

Python文件操作与IO流的使用方式

《Python文件操作与IO流的使用方式》:本文主要介绍Python文件操作与IO流的使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、python文件操作基础1. 打开文件2. 关闭文件二、文件读写操作1.www.chinasem.cn 读取文件2. 写

详解如何在SpringBoot控制器中处理用户数据

《详解如何在SpringBoot控制器中处理用户数据》在SpringBoot应用开发中,控制器(Controller)扮演着至关重要的角色,它负责接收用户请求、处理数据并返回响应,本文将深入浅出地讲解... 目录一、获取请求参数1.1 获取查询参数1.2 获取路径参数二、处理表单提交2.1 处理表单数据三、

PyQt6中QMainWindow组件的使用详解

《PyQt6中QMainWindow组件的使用详解》QMainWindow是PyQt6中用于构建桌面应用程序的基础组件,本文主要介绍了PyQt6中QMainWindow组件的使用,具有一定的参考价值,... 目录1. QMainWindow 组php件概述2. 使用 QMainWindow3. QMainW

MySQL中SQL的执行顺序详解

《MySQL中SQL的执行顺序详解》:本文主要介绍MySQL中SQL的执行顺序,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录mysql中SQL的执行顺序SQL执行顺序MySQL的执行顺序SELECT语句定义SELECT语句执行顺序总结MySQL中SQL的执行顺序

Java资源管理和引用体系的使用详解

《Java资源管理和引用体系的使用详解》:本文主要介绍Java资源管理和引用体系的使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1、Java的引用体系1、强引用 (Strong Reference)2、软引用 (Soft Reference)3、弱引用 (W