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云计算从入门到精通》系列实战笔记全放送

          为了方便Linux云计算爱好者的学习查看,马哥Linx云计算团队特别整理了《Linux云计算从入门到精通》年度重磅大放送,囊括了整个学习过程的学习精华,内容全部由马哥Linux云计算学员撰写,欢迎大家支持!!!       详情请看:  一、Linux运维基础实战入门 从Linux0基础入门开始,全面讲解作为新手如何学习Linux,以及学习方法和…

    2017-09-14
  • 马哥教育网络班20期+第3周课程练习

    1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。 # who |cut -d" " -f1 | uniq 2、取出最后登录到当前系统的用户的相关信息。 # last | head -1 3…

    Linux干货 2016-06-26
  • 进程管理

    Process Manager 工作管理  jobs ctrl+z,& bg,fg nohup 进程,资源管理  查看:pstree,ps,top,vmstat,pmap 查询:pgrep,pidof,fuser,lsof 管理:kill,nice,renice 管理软件or命令  htop glances dstat …

    Linux干货 2016-04-11
  • Linux运维学习历程-第六天-Linux用户、组以及权限管理

    本章内容    Linux的安全模型    用户和组    用户和组管理命令    文件权限    默认权限    特殊权限    ACL访问控制 一:3A认证       &nb…

    Linux干货 2016-08-07
  • Linux学习 Grep详则。

    grep 功能说明:查找文件里符合条件的字符串。 语  法:grep [-abcEFGhHilLnqrsvVwxy][-A<显示列数>][-B<显示列数>][-C<显示列数>][-d<进行动作>][-e<范本样式>][-f<范本文件>][–help][范本样式][文件或目录&…

    Linux干货 2017-07-24
  • Linux基础知识之软件包管理(一)

    软件包管理 1.软件运行环境 运维工作的任务: 系统管理、库调用管理(开发接触的多,运维接触的少),安装配置某些程序包,让程序包运行并提供相应类型的服务 程序执行的过程:     程序源代码–>预处理–>编译–>汇编–>链接     预处理:将代码…

    Linux干货 2016-08-22