date用法心得

Linux时间格式极大程度的遵循了人类习惯,以下为部分常见时间。
date命令本身提供了日期的加减运算,shell编程时灵活运用

常见时间:
monday (mon)    周一     tuesday (tue)     周二
Wedesday (wed) 周三     thursday (thu)  周四
friday (fri)            周五     saturday (sat)   周六
sunday (sun)       周日
tomorrow            明天      yesterday 昨天
today                   今天
January (Jan) 一月             February (Feb) 二月
March (Mar) 三月               April (Apr). 四月
May (May) 五月                  June (Jun) 六月
July (Jul) 七月                   August (Aug) 八月
September (Sep) 九月      October (Oct) 十月
November (Nov) 十一月 December (Dec) 十二月
year/next year 明年          last year 去年
1 year ago N年前               1 day ago N天前
1 month ago N月前          last month 上个月
month/next month 下个月

1、显示当前时间,格式:2016-06-18 10:20:30

使用命令:date 命令格式:
date [OPTION]… [+FORMAT]
用到的选项
%F full date; same as %Y-%m-%d【显示格式为 年-月-日】
%T time; same as %H:%M:%S【显示格式为 时:分:秒】
%Y year【显示格式为年】
%m month (01..12)【显示格式为01-12月份】
%d day of month (e.g., 01)【显示格式为每月的日】
%H hour (00..23)【显示格式为24小时制的时】
%M minute (00..59)【显示分钟】
%S second (00..60)【显示秒】
方法1:
#date “+%F %T”
2017-11-08 19:23:41
方法2:
#date “+%Y-%m-%d %H:%M:%S”
2017-11-08 19:25:46
方法3:
#date +%F” “%T
2017-11-08 19:31:23

2、显示前天是星期几

使用命令:date
date [OPTION]… [+FORMAT]
%a locale’s abbreviated weekday name (e.g., Sun)【显示短格式的星期】
%A locale’s full weekday name (e.g., Sunday)【显示完整的星期】
方法1:
#date -d “2 days ago” +%A
Monday
#date -d “2 days ago” +%a
Mon
方法2:(以11-8日当时来讲)
#date -d “Nov 6” +%a
Mon
#date -d “Nov 6” +%A
Monday
#date -d “6 Nov” +%A
Monday
方法3:(以11-8日当时来讲)
#date -d “20171106” +%a
Mon
#date -d “20171106” +%A
Monday
方法4:
#date -d “-2 day” +%A
Monday
延伸思维
2天前
#date -d “-2 day” +%F
2017-11-10
1月后
#date -d “1 month” +%F
2017-12-09
1周后
#date -d “1 weeks” +%F
2017-11-16
1年前
#date -d “-1 year” +%F
2016-11-09
下个周日的日期(注意:只能正数向后星期,不能往前)
#date -d “1 sun” +%F
2017-11-12
1分钟前
#date -d “-1 min” +%R
09:06
5小时后
#date -d “5 hour” +%R
14:14
昨天是星期几:
#date -d “yesterday” +%A
Wednesday

3、设置当前日期为2019-08-07 06:05:10 (后面加显示格式仅为方便验证)

使用命令:date
date [-u|–utc|–universal] [MMDDhhmm[[CC]YY][.ss]]
方法1:
#date 080706052019.10
Wed Aug 7 06:05:10 CST 2019
方法2:
#date -s “08/07/2019 06:05:10”
Wed Aug 7 06:05:10 CST 2019
方法3:
#date -s “aug 7 2019 06:05:10” +%F-%r
2019-08-07-06:05:10 AM
方法4:
#date -s “2019-08-07 06:05:10” +%F” time: “%r
2019-08-07 time: 06:05:10 AM
方法5:
#date -s “20190807 06:05:10” +%F” time: “%r
Wed Aug 7 06:05:10 CST 2019
延伸思维(后面加显示格式仅为方便验证)
设置时间,只有root权限才能设置,其他只能查看
设置日期,时间会变成00:00:00
#date -s “20190807” +%F” time: “%T
2019-08-07 time: 00:00:00
只设置时间,不改变日期
#date -s “14:20:15” +%F” time: “%T
2019-08-07 time: 14:20:15

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/88257

(1)
金色之谜金色之谜
上一篇 2017-11-08 19:09
下一篇 2017-11-09 17:36

相关推荐

  • UML图中类之间的关系:依赖,泛化,关联,聚合,组合,实现

    类与类图 1) 类(Class)封装了数据和行为,是面向对象的重要组成部分,它是具有相同属性、操作、关系的对象集合的总称。 2) 在系统中,每个类具有一定的职责,职责指的是类所担任的任务,即类要完成什么样的功能,要承担什么样的义务。一个类可以有多种职责,设计得好的类一般只有一种职责,在定义类的时候,将类的职责分解成为类的属性和操作(即方法)。 3) 类的属性…

    Linux干货 2015-04-07
  • 源码编译nginx和Nginx的特性,配置文件指令说明

    nginx的官方站点 www.nginx.org Nginx:engine X Tenginx:Taobao enginx libevent:高性能的网络库 epoll(); Nginx特性  模块化设计,较好扩展性:但不支持模块的动态装卸载;Tenginx支持;  高可靠性   master –> …

    Linux干货 2017-04-30
  • linux 学习笔记

    第二周

    Linux干货 2018-03-16
  • 关于大型网站技术演进的思考(二):存储的瓶颈(2)

    原文出处: 夏天的森林   上篇里我讲到某些网站在高并发下会报出503错误,503错误的含义是指网站服务端暂时无法提供服务的含义,503还表达了网站服务端现在有问题但是以后可能会提供正常的服务,对http协议熟悉的人都知道,5开头的响应码表达了服务端出现了问题,在我们开发测试时候最为常见的是500错误,500代表的含义是服务端程…

    2015-03-11
  • 20160802课堂练习题

    练习: 1、  当用户xiaoming对/testdir 目录无执行权限时,意味着无法做哪些操作? 无法cd进入该目录,但可以ls查看到该目录下的文件,其余的任何操作都执行不了。 2、  当用户xiaoqiang对/testdir 目录无读权限时,意味着无法做哪些操作? 能够进入该目录,不能读取到信息;但如果知道有哪些文件及目录是可以创建…

    Linux干货 2016-08-04
  • 第十八周博客作业

    1、为LNMP架构添加memcached支持,并完成对缓存效果的测试报告; 操作系统: CentOS 7.210.0.0.51 nginx+php+mysql10.0.0.52 memcached 一. 环境准备: 搭建LNMP编译安装环境 1. 配置163的yum源和阿里云的epel源 [root@localhost ~]# mv /etc/yum.rep…

    2017-07-12