zoukankan      html  css  js  c++  java
  • date命令

    1、命令:date

    2、命令功能:date 可以用来显示或设定系统的日期与时间。

    3、命令参数

    -d<字符串>:显示字符串所指的日期与时间。字符串前后必须加上双引号; 
    -s<字符串>:根据字符串来设置日期与时间。字符串前后必须加上双引号; 
    -u:显示GMT; 
    --help:在线帮助; 
    --version:显示版本信息。

    4、日期格式字符串列表

    复制代码
    复制代码
    %H 小时(以00-23来表示)。 
    %I 小时(以01-12来表示)。 
    %K 小时(以0-23来表示)。 
    %l 小时(以0-12来表示)。 
    %M 分钟(以00-59来表示)。 
    %P AM或PM。 
    %r 时间(含时分秒,小时以12小时AM/PM来表示)。 
    %s 总秒数。起算时间为1970-01-01 00:00:00 UTC。 
    %S 秒(以本地的惯用法来表示)。 
    %T 时间(含时分秒,小时以24小时制来表示)。 
    %X 时间(以本地的惯用法来表示)。 
    %Z 市区。 
    %a 星期的缩写。 
    %A 星期的完整名称。 
    %b 月份英文名的缩写。 
    %B 月份的完整英文名称。 
    %c 日期与时间。只输入date指令也会显示同样的结果。 
    %d 日期(以01-31来表示)。 
    %D 日期(含年月日)。 
    %j 该年中的第几天。 
    %m 月份(以01-12来表示)。 
    %U 该年中的周数。 
    %w 该周的天数,0代表周日,1代表周一,异词类推。 
    %x 日期(以本地的惯用法来表示)。 
    %y 年份(以00-99来表示)。 
    %Y 年份(以四位数来表示)。 
    %n 在显示时,插入新的一行。 
    %t 在显示时,插入tab。 
    MM 月份(必要) 
    DD 日期(必要) 
    hh 小时(必要) 
    mm 分钟(必要)
    ss 秒(选择性) 
    复制代码
    复制代码

    5、实例

    格式化输出:

    date +"%Y-%m-%d" 
    2015-12-07

    输出昨天日期:

    date -d "1 day ago" +"%Y-%m-%d"
    2015-11-19

    2秒后输出:

    date -d "2 second" +"%Y-%m-%d %H:%M.%S"
    2015-11-20 14:21.31

    传说中的 1234567890 秒:

    date -d "1970-01-01 1234567890 seconds" +"%Y-%m-%d %H:%m:%S"
    2009-02-13 23:02:30

    普通转格式:

    date -d "2009-12-12" +"%Y/%m/%d %H:%M.%S"
    2009/12/12 00:00.00

    apache格式转换:

    date -d "Dec 5, 2009 12:00:37 AM" +"%Y-%m-%d %H:%M.%S"
    2009-12-05 00:00.37

    格式转换后时间:

    date -d "Dec 5, 2009 12:00:37 AM 2 year ago" +"%Y-%m-%d %H:%M.%S"
    2007-12-05 00:00.37

    加减操作:

    复制代码
    复制代码
    date +%Y%m%d               #显示前天年月日 
    date -d "+1 day" +%Y%m%d   #显示前一天的日期 
    date -d "-1 day" +%Y%m%d   #显示后一天的日期 
    date -d "-1 month" +%Y%m%d #显示上一月的日期 
    date -d "+1 month" +%Y%m%d #显示下一月的日期 
    date -d "-1 year" +%Y%m%d  #显示前一年的日期 
    date -d "+1 year" +%Y%m%d  #显示下一年的日期
    复制代码
    复制代码

    设定时间:

    复制代码
    复制代码
    date -s          #设置当前时间,只有root权限才能设置,其他只能查看 
    date -s 20120523 #设置成20120523,这样会把具体时间设置成空00:00:00 
    date -s 01:01:01 #设置具体时间,不会对日期做更改 
    date -s "01:01:01 2012-05-23" #这样可以设置全部时间 
    date -s "01:01:01 20120523"   #这样可以设置全部时间 
    date -s "2012-05-23 01:01:01" #这样可以设置全部时间 
    date -s "20120523 01:01:01"   #这样可以设置全部时间
    复制代码
    复制代码

    检查一组命令花费的时间:

    复制代码
    复制代码
    #!/bin/bash 
    start=$(date +%s) 
    nmap man.linuxde.net &> /dev/null 
    end=$(date +%s) 
    difference=$(( end - start )) 
    echo $difference seconds.
    复制代码
    复制代码
     
     

    Linux date命令详解

     

    1、显示时间

    date命令可以按照指定格式显示日期,只键入date则以默认格式显示当前时间。如下:

    如果需要以指定的格式显示日期,可以使用“+”开头的字符串指定其格式,详细格式如下:

    %n : 下一行
    %t : 跳格
    %H : 小时(00-23)
    %I : 小时(01-12)
    %k : 小时(0-23)
    %l : 小时(1-12)
    %M : 分钟(00-59)
    %p : 显示本地 AM 或 PM
    %r : 直接显示时间 (12 小时制,格式为 hh:mm:ss [AP]M)
    %s : 从 1970 年 1 月 1 日 00:00:00 UTC 到目前为止的秒数
    %S : 秒(00-60)
    %T : 直接显示时间 (24 小时制)
    %X : 相当于 %H:%M:%S
    %Z : 显示时区
    %a : 星期几 (Sun-Sat)
    %A : 星期几 (Sunday-Saturday)
    %b : 月份 (Jan-Dec)
    %B : 月份 (January-December)
    %c : 直接显示日期与时间
    %d : 日 (01-31)
    %D : 直接显示日期 (mm/dd/yy)
    %h : 同 %b
    %j : 一年中的第几天 (001-366)
    %m : 月份 (01-12)
    %U : 一年中的第几周 (00-53) (以 Sunday 为一周的第一天的情形)
    %w : 一周中的第几天 (0-6)
    %W : 一年中的第几周 (00-53) (以 Monday 为一周的第一天的情形)
    %x : 直接显示日期 (mm/dd/yy)
    %y : 年份的最后两位数字 (00.99)
    %Y : 完整年份 (0000-9999)

    上述格式不必全都记住,只需要掌握几个常用的即可。例如%Y表示年,%m表示月,%d表示日,%H表示小时,%M表示分钟,%S表示秒,%s表示从 1970 年 1 月 1 日 00:00:00 UTC 到目前为止的秒数,相当于time函数,%w表示一周中的第几天。

    实例见下:

    如果要显示的时间不是当前时间,而是经过运算的时间,则可以用-d选项。例如显示三年前的时间:

    看到这个命令我很受伤,过去的时间再也回不去了,只能用命令看看。显示三个月后的时间:

    显示十天后的时间:

    有时候需要获取当前时间距离1970年0时0分0秒所经历的秒数,保存在变量中:

    2、设置时间

    用 -s选项可以设置系统时间:

    方式多种多样,任你选:

    你要足够相信date的智能。

  • 相关阅读:
    CodeForces 510C Fox And Names (拓扑排序)
    Codeforces 1153D Serval and Rooted Tree (简单树形DP)
    HDU 6437 Problem L.Videos (最大费用)【费用流】
    Luogu P3381 (模板题) 最小费用最大流
    Codeforces 741B Arpa's weak amphitheater and Mehrdad's valuable Hoses (并查集+分组背包)
    Codeforces 1144F Graph Without Long Directed Paths (DFS染色+构造)
    HDU 2204 Eddy's 爱好 (容斥原理)
    Codeforces 939E Maximize! (三分 || 尺取)
    Codeforces 938D. Buy a Ticket (最短路+建图)
    CodeForces 959E Mahmoud and Ehab and the xor-MST (MST+找规律)
  • 原文地址:https://www.cnblogs.com/igoodful/p/13220967.html
Copyright © 2011-2022 走看看