linux date -d参数用法

最近偶为了写一个调整时间的shell而绞尽脑汁,结果在某一天
#info data
这里面看到了data -d参数的灵活用法,真是欣喜若狂。好东西要保存,整理整理:

* To print the date of the day before yesterday:

date --date=‘2 days ago‘

* To print the date of the day three months and one day hence:

date --date=‘3 months 1 day‘

* To print the day of year of Christmas in the current year:

date --date=‘25 Dec‘ +%j

* To print the current full month name and the day of the month:

date ‘+%B %d‘

But this may not be what you want because for the first nine days
     of the month, the `%d‘ expands to a zero-padded two-digit field,
     for example `date -d 1may ‘+%B %d‘‘ will print `May 01‘.

* To print a date without the leading zero for one-digit days of the
     month, you can use the (GNU extension) `-‘ flag to suppress the
     padding altogether:

date -d 1may ‘+%B %-d

* To print the current date and time in the format required by many
     non-GNU versions of `date‘ when setting the system clock:

date +%m%d%H%M%Y.%S

* To set the system clock forward by two minutes:

date --set=‘+2 minutes‘

* To print the date in RFC 2822 format, use `date --rfc-2822‘.  Here
     is some example output:

Fri, 09 Sep 2005 13:51:39 -0700

* To convert a date string to the number of seconds since the epoch
     (which is 1970-01-01 00:00:00 UTC), use the `--date‘ option with
     the `%s‘ format.  That can be useful in sorting and/or graphing
     and/or comparing data by date.  The following command outputs the
     number of the seconds since the epoch for the time two minutes
     after the epoch:

date --date=‘1970-01-01 00:02:00 +0000‘ +%s
          
          date --date=‘1970-01-01 00:02:00 +0000‘ +%s
          120

If you do not specify time zone information in the date string,
     `date‘ uses your computer‘s idea of the time zone when
     interpreting the string.  For example, if your computer‘s time
     zone is that of Cambridge, Massachusetts, which was then 5 hours
     (i.e., 18,000 seconds) behind UTC:

# local time zone used
          date --date=‘1970-01-01 00:02:00‘ +%s
          18120

* If you‘re sorting or graphing dated data, your raw date values may
     be represented as seconds since the epoch.  But few people can
     look at the date `946684800‘ and casually note "Oh, that‘s the
     first second of the year 2000 in Greenwich, England."

date --date=‘2000-01-01 UTC‘ +%s
          946684800

An alternative is to use the `--utc‘ (`-u‘) option.  Then you may
     omit `UTC‘ from the date string.  Although this produces the same
     result for `%s‘ and many other format sequences, with a time zone
     offset different from zero, it would give a different result for
     zone-dependent formats like `%z‘.

date -u --date=2000-01-01 +%s
          946684800

To convert such an unwieldy number of seconds back to a more
     readable form, use a command like this:

# local time zone used
          date -d ‘1970-01-01 UTC 946684800 seconds‘ +"%Y-%m-%d %T %z"
          1999-12-31 19:00:00 -0500

Often it is better to output UTC-relative date and time:

date -u -d ‘1970-01-01 946684800 seconds‘ +"%Y-%m-%d %T %z"
          2000-01-01 00:00:00 +0000

时间: 2024-10-02 19:32:57

linux date -d参数用法的相关文章

[转帖]Linux date命令的用法(转)

Linux date命令的用法(转) https://www.cnblogs.com/asxe/p/9317811.html 1.命令:date 2.命令功能:date 可以用来显示或设定系统的日期与时间. 3.命令参数 -d<字符串>:显示字符串所指的日期与时间.字符串前后必须加上双引号: -s<字符串>:根据字符串来设置日期与时间.字符串前后必须加上双引号: -u:显示GMT: --help:在线帮助: --version:显示版本信息. 4.日期格式字符串列表 %H 小时(以

Linux date命令的用法

date命令本身提供了日期的加减运算 例如:得到昨天的时间 date +%Y%m%d --date="-1 day" 1.在显示方面,使用者可以设定欲显示的格式,格式设定为一个加号后接数个标记,其中可用的标记列表如下: % :  打印出 %%n : 下一行%t : 跳格%H : 小时(00..23)%I : 小时(01..12)%k : 小时(0..23)%l : 小时(1..12)%M : 分钟(00..59)%p : 显示本地 AM 或 PM%r : 直接显示时间 (12 小时制,

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 年

Linux tar 命令参数及用法详解--Linux打包备份命令

linux tar命令参数及用法详解--linux打包备份命令 tar命令 tar - tar 档案文件管理程序的 GNU 版本.下面将逐个介绍其含义tar [-cxtzjvfpPN] 文件与目录 ....常用参数:-c :建立一个压缩文件的参数指令(create 的意思):-x :解开一个压缩文件的参数指令!-t :查看 tarfile 里面的文件!特别注意,在参数的下达中, c/x/t 仅能存在一个!不可同时存在!因为不可能同时压缩与解压缩.-z :是否同时具有 gzip 的属性?亦即是否需

linux dd命令参数及用法详解---用指定大小的块拷贝一个文件(也可整盘备份)

linux dd命令参数及用法详解---用指定大小的块拷贝一个文件 日期:2010-06-14 点击:3830 来源: 未知 分享至: linux dd命令使用详解 dd 的主要选项: 指定数字的地方若以下列字符结尾乘以相应的数字: b=512, c=1, k=1024, w=2, xm=number m if=file 输入文件名,缺省为标准输入. of=file 输出文件名,缺省为标准输出. ibs=bytes 一次读入 bytes 个字节(即一个块大小为 bytes 个字节). obs=b

linux cp命令参数及用法详解---linux 复制文件命令cp

linux cp命令参数及用法详解---linux 复制文件命令cp [[email protected]Linux ~]# cp [-adfilprsu] 来源档(source) 目的檔(destination)[[email protected]linux ~]# cp [options] source1 source2 source3 -. directory参数:-a :相当于 -pdr 的意思:-d :若来源文件为连结文件的属性(link file),则复制连结文件属性而非档案本身:-

Linux和MAC命令参数用法查询工具:cheat

一.什么是cheat? cheat是在GNU通用公共许可证下,为Linux命令行用户发行的交互式备忘单应用程序.简单来说,它没有提供其他额外多余的信息,只通过使用实例告诉你一个命令参数如何使用. 二.在Redhat.CentOS系统中安装Cheat: Cheat主要有两个依赖python和pip 1.安装python.pip # yum install python python-pip -y # pip install --upgrade pip(更新pip到最新版本) 注:pip是一个方便的

Linux挂载命令mount用法及参数详解

Linux挂载命令mount用法及参数详解 导读 mount是Linux下的一个命令,它可以将分区挂接到Linux的一个文件夹下,从而将分区和该目录联系起来,因此我们只要访问这个文件夹,就相当于访问该分区了. 挂接命令(mount) 首先,介绍一下挂接(mount)命令的使用方法,mount命令参数非常多,这里主要讲一下今天我们要用到的. 命令格式:mount [-t vfstype] [-o options] device dir 1.-t vfstype 指定文件系统的类型,通常不必指定,m

(转)linux traceroute命令参数及用法详解--linux跟踪路由命令

linux traceroute命令参数及用法详解--linux跟踪路由命令 原文:http://blog.csdn.net/liyuan_669/article/details/25362505 通过traceroute我们可以知道信息从你的计算机到互联网另一端的主机是走的什么路径.当然每次数据包由某一同样的出发点(source)到达某一同样的目的地(destination)走的路径可能会不一样,但基本上来说大部分时候所走的路由是相同的.linux系统中,我们称之为traceroute,在MS