日常工作中经常使用date这个命令,几乎所有与日期时间相关的操作都会跟这个命令扯上点关系。简单写几条经常使用到的date命令,仅供大家参考。

首先检查一下date的版本,注意如果你用的不是GNU date,那么以下的命令不保证成功。

date --version
date (GNU coreutils) 5.97
Copyright (C) 2006 Free Software Foundation, Inc.
This is free software.  You may redistribute copies of it under the terms of
the GNU General Public License <http://www.gnu.org/licenses/gpl.html>.
There is NO WARRANTY, to the extent permitted by law.

Written by David MacKenzie.

先看看最简单的一个,没啥好解释的。

date
Tue Nov :: CST
 
格式化输出,
%F是按照YYYY-YY-DD的格式显示当前日期
%D是按照MM/DD/YY的格式显示当前日期。
类似%F/D的参数是什么意思,man date都能找到
 date +%F
-- date +%D
//

有很多需求都是计算N天前/后,N月前/后,甚至是N年。。。。。。那么下边的操作应该比较合适

#计算3天前的日期
date +%D -d '-3 days'
//
 #计算3天后的日期
date +%D -d '+3 days'
//
 #计算3天后的日期,写不写+都一个效果,跟上边结果一样
date +%D -d '3 days'
//
#计算1个月前的日期
date +%F -d '-1 month'
--
#计算1年前的日期
date +%F -d '-1 year'
--

再来看看相关时间的操作,有了刚才上边对日期操作的理解,看这个时间相比不难。E文单词不懂的去问translate.google.com.hk ^_^

获取当前时间
date +%T
:: 获取1小时前的时间
date +%T -d '-1 hours'
:: 获取10分钟前的时间
date +%T -d '-10 minutes'
:: 获取3小时后的时间
date +%T -d '3 hours'
::

有关时间戳的处理,时间戳的基准是1970年1月1日0点0分0秒,注意这可是格林尼治天文台的时间,不是北京时间啊。

 显示系统当前的时间戳
date +%s 把某时间戳转换回日期格式
date -d "@1352183334"
Tue Nov :: CST
 
看到了吧,因为现在这个系统是东8区的时区,所以0时间戳时候,这系统应该已经是1970年1月1日早上8点了
date -d "@0"
Thu Jan  1 08:00:00 CST 1970

再来个计算任意日期的前N日或后N日如何操作

DAY=""
echo $DAY date +%F -d "$DAY 1 day"
-- date +%F -d "$DAY -1 day"
--

计算两个日期相差天数,比如2012年11月1日和2010年5月1日,相差多少天呢?

d1=$(date +%s -d )
d2=$(date +%s -d )
echo $(((d1-d2)/))

date用法的更多相关文章

  1. JavaScript八张思维导图—Date用法

    JS基本概念 JS操作符 JS基本语句 JS数组用法 Date用法 JS字符串用法 JS编程风格 JS编程实践 不知不觉做前端已经五年多了,无论是从最初的jQuery还是现在火热的Angular,Vu ...

  2. Shell之date用法

    创建以当前时间为文件名的 mkdir `date+%Y%m%d` 备份以时间做为文件名的 tar cvf./htdocs`date +%Y%m%d`.tar ./* date命令如何获得上星期的日期? ...

  3. PHP中日期时间函数date()用法总结

    date()是我们常用的一个日期时间函数,下面我来总结一下关于date()函数的各种形式的用法,有需要学习的朋友可参考. 格式化日期date() 函数的第一个参数规定了如何格式化日期/时间.它使用字母 ...

  4. Linux的date用法

    显示时间是个常用的命令,在写shell脚本中也经常会用到与日期相关文件名或时间显示.无论是linux还是windows下都是date命令. Linux下date命令用法 date [OPTION]… ...

  5. linux date用法

    读者可以设定特定的格式,格式设定规则:一个加号后接数个标记,每个标记中都有%,其中可用的标记列表和说明如下:  %n : 下一行 %t : 跳格 %H : 小时(00..23) %I : 小时(01. ...

  6. Linux date命令的用法

    在linux shell编程中,经常用到日期的加减运算以前都是自己通过expr函数计算,很麻烦.其实date命令本身提供了日期的加减运算非常方便. 例如:得到昨天的时间date  --date=&qu ...

  7. 11.Linux date命令的用法

    date命令常的日常应用   修改时间 date -s “2008/05/23 19:20″ 打包文件 tar zcvf log-$(date +$F).gz /home/admin/logs 同步阿 ...

  8. JS中new Date()用法及获取服务器时间

    1.获取服务器时间: var now = new Date($.ajax({async: false}).getResponseHeader("Date")); 2.new Dat ...

  9. 用bat使用date和time命令

    D:\>date /T 2010-12-10 星期五 D:\>echo %date:~0,10% 2010-12-10 date:命令(别忘记date后面有个冒号) ~0:从索引0开始取内 ...

随机推荐

  1. android布局常用属性记录

    android布局常用属性记录   http://blog.csdn.net/xn4545945/article/details/7717086这里有一部分别人总结的其余的: align:对齐 par ...

  2. JS小数位保留两位小数--toFixed()

    parseInt,parseFloat,parseDouble在JS中是将值转换成相应的类型: 你必须要这样,才能实现: <script>         alert(parseFloat ...

  3. Mahout快速入门教程

    Mahout 是一个很强大的数据挖掘工具,是一个分布式机器学习算法的集合,包括:被称为Taste的分布式协同过滤的实现.分类.聚类等.Mahout最大的优点就是基于hadoop实现,把很多以前运行于单 ...

  4. jQuery中的插件的编写和使用

    1,常用的jQuery插件:表单验证插件formValidator a.目前支持5大验证方式:1.inputValidator(针对input,textarea,select控件的字符长度,值范围,选 ...

  5. CMS设计-组件化

    原来CMS使用的专题类的页面是 : 事先由前端写好完整页面,再交付给运营使用,这样使用的比较灵活,可以根据市场的不同需求由前端切出不同的页面,有时候一旦需求过多,就耽误切图的时间. 现在M和H5采用组 ...

  6. CSS3学习之圆角box-shadow,阴影border-radius

    最近经常玩腾讯微博,出来职业习惯,看看它的CSS,里面运用了大量的css3的东东,有一处用到了Data URI,还有css e­xpression有争议的地方,对png24图片的处理也是用滤镜,类似( ...

  7. Java学习笔记--多线程

    rollenholt的博文:http://www.cnblogs.com/rollenholt/archive/2011/08/28/2156357.html 弹球例子: 0. 创建Bounce框架 ...

  8. 转载----给JavaScript初学者的24条最佳实践

      给JavaScript初学者的24条最佳实践 1.使用 === 代替 == JavaScript 使用2种不同的等值运算符:===|!== 和 ==|!=,在比较操作中使用前者是最佳实践. “如果 ...

  9. sqlplus 一次奇葩问题 HTTP proxy setting has incorrect value

    y@y:~$ sqlplus Error 46 initializing SQL*PlusHTTP proxy setting has incorrect valueSP2-1502: The HTT ...

  10. JAVA实现实用的ZIP压缩与解压

    http://blog.csdn.net/z69183787/article/details/38555913