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

相关推荐

  • 文本处理工具三剑客之awk

    文本处理工具:grep,sed,awk awk:报告生成器,格式化文本输出 AWK: Aho ,Weinberger,Kernighan gawk:GNU awk gawk – pattren  scanning  and  processing  language 基本语法:gawk  [opt…

    Linux干货 2016-09-22
  • N25期–第十四周作业

    系统的INPUT和OUTPUT默认策略为DROP; # iptables -P INPUT DROP # iptables -P OUTPUT DROP 1、 限制本地主机的web服务器在周一不允许访问;新请求的速率不能超过100个每秒;web服务器包含了admin字符串的页面不允许访问;web服务器仅允许响应报文离开本机;   #iptables…

    Linux干货 2017-04-10
  • keepalived单主模型和nginx双主模型

    主程序:keepalived 主配置文件:/etc/keepalived/keepalived.conf 单主模型ipvs: global_defs { notification_email { root@localhost } notification_email_from keepalived@localhost smtp_server 127.0.0.…

    Linux干货 2017-08-08
  • zabbix表分区(适用于zabbix2.0.x,zabbix2.2.x和zabbix2.4.x)

    本文主要介绍了zabbix进行数据库表分区的方法:         在系统监控中,zabbix已经代替了nagios+cacti,zabbix以其良好的图形展示和高度自定义赢得了很多运维人员的喜爱。但是由于在工作中,zabbix跑的时间过长(我们公司跑了将近3年),web页面经常卡顿,监控…

    Linux干货 2015-10-27
  • httpd2.4 应用

    练习:  (1)基于主机名实现三个虚拟主机     (2) 每虚拟主机使用独立的访问日志和错误日志 (3) 第三个虚拟主机的/admin要进行用户访问认证  (4) 在第二个虚拟主机上提供/status; (5) 在第三个虚拟主机提供路径别名/bbs,访问其它文件系统路径; (6) 尝试使用混合类型…

    Linux干货 2016-10-09
  • 16 文本处理工具

    文本处理工具一 一、杂项知识整理 1、ps axo user,ruser,cmd 查看命令发起者的身份和真正的登录身份: [root@localhost test]# ps axo user,ruser,cmd USER     RUSER  &nb…

    Linux干货 2016-08-05