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

相关推荐

  • linux三剑客之awk

    awk             简介:是一个优良的文本处理工具,Linux及Unix环境中现有的功能最强大的数据处理引擎之一。这种编程及数据操作语言的最大功能         &n…

    Linux干货 2016-12-05
  • 推荐-DNS架设实验

    DNS架设实验 实验拓扑 实验准备 流程 测试 总结 实验拓扑: 1.对于来自内网的DNS正反向解析,并实现view选择指定解析库解析。2.对于来自外网的DNS正向解析,并实现view选择指定解析库解析。3.实现主从服务器结构。4.实现一个完成对一个子域的授权。5.子域中的所有查询xiao.com.的信息都转向192.168.1.1解析。 1.根据view,…

    2016-04-19
  • linux初识

    一、计算机的组成及其功能: 存储器:    实现记忆功能的部件用来存放计算程序及参与运算的各种数据 运算器:    负责数据的算术运算和逻辑运算即数据的加工处理 控制器:    负责对程序规定的控制信息进行分析,控制并协调输入,输出操作或内存访问 输入设备:    实现计算程序和…

    Linux干货 2016-10-30
  • grep &&正则表达式&&通配,元字,转义符

    grep 基于正则表达式的查询 1正则表达式: 正则表达式是通过使用特殊的字符所编写的模式,一些字符不表示字符的表面意思,具有控制和通配的功能. 使用正则表达式进行匹配具有两种方法:一是通过使用特殊的元字符进行字符匹配;二是使用次数匹配。 一, 正则表达式的特殊字符(元字符) :  #建议再温习一下之前所学的统通配符,对比一下,防止混淆。 (1)元…

    Linux干货 2016-08-05
  • N26_第三周作业

    1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。 演示: [root@joylin test]# who|cut -d” ” -f1|uniq root gentoo [root@joylin test]# who|cut -d” ” -f1|uniq -c 5 root 1 gentoo 或者 [root@joyl…

    Linux干货 2017-02-21
  • Jumpserver 3.0 全新改版 更轻、更快、更便捷

               Jumpserver Wiki                       &…

    系统运维 2016-01-05