Linux - date -d

Posted 程序员牧码

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux - date -d相关的知识,希望对你有一定的参考价值。

之前写过一篇博客是讲以当前时间为基础,获取几天前/后,几个小时前/后,几个月前/后,几年前/后,具体的详细解释在 Linux - date -d(一) 已经详细讲解,在此不再赘述。然而今天遇到一个问题是根据指定的时间获取前/后的时间。

以前是这样用的,直接输出所需要的时间

date "+%Y-%m-%d"

1、获取指定日期几个小时前的日期,相应的,如果需要几天/月/年 前的时间,可以将下面的 hours 换成 days,months,years 。因为用的markdown编辑器,有了特殊符号, 会自动格式化,所以这里我截图以便看的清楚。下列图中day2 的值是使用 ` 来取得命令的值,就是键盘上tab上面的键

 2、获取指定日期几个小时后的日期,相应的,如果需要几天/月/年 后的时间,可以将下面的 hours 换成 days、months、years

需要注意的是,如果这里用的变量来接受date 的结果,需要将date 命令 用 ` 辅助,否则提示 command not found。

遗留的问题

不过我也遇到了我没有解决的问题

day="2016-12-12"
date -d "+ 1 day $day"
date -d "+ 1 day $day" + "%Y-%m-%d"

最后一句只不过加了格式化,语句就出现了错误,终于找到解决办法,是格式化前面阿哥加号的位置出现了问题,应该在双引号里面,或者直接将格式化的双引号去掉也可以。

 

以上是关于Linux - date -d的主要内容,如果未能解决你的问题,请参考以下文章

(转) Linux命令详解-date

linux date 设置系统时间

Linux date 用法

Linux date 用法

Linux date命令的用法

linux基本功之date命令实战