Shell脚本中date的用法小结

 操做系统中时间管理是很重要的,也是很复杂的,首先要处理每一个月不一样的天数,每4年有一闰年,每400年少一闰,这样才能处理星期几的问题。顺便提一下,在1752年的9月还少了11天,在Linux系统中能够用“cal”命令打印当年的年历看看。
  闲话少说,Linux中关于系统时间的管理离不开date命令,它除了显示当前时间,还能够获取其它时间,设置时间等。
  Linux系统的时间是以时间戳来记录的,即从1970年1月1日(00:00:00 GMT)以来的秒数,首先date能够实现字符串时间和时间戳的转换:

date -d"2013-01-31 20:00:00" +%s shell

即为显示指定时间的时间戳,而

date -d @1359643046 +"%Y-%m-%d %H:%M:%S" spa

就能够实现时间戳到字符串形式的转换。命令中-d指定时间,+指定显示时间的格式(还能够显示ns哦,用%N就能够了)。
  再来就是其它时间了,好比我想知道1999年3月4日是星期几,这个问题也能够用date来实现:

date -d "1999-3-4" +"%A" 操作系统

还能够显示500年以后的明天呢,是星期几固然也知道了:

date -d"500years" 3d

500年前也同样:

date -d"-500years" code

date -d"500years ago" 字符串

你能够试试: it

date -d"-500years ago" class

2个月3天以后能够这样写: date

date -d"+2month+3day" 时间戳

  最后,设置时间只需一个参数-s就好了。

获取10分钟以前的时间: date --date=“10 munites ago”
        获取10天以前的时间: date --date=“10 days ago”
        获取10分钟以后的时间: date --date=“-10 munites ago”
        获取10天以后的时间: date --date=“-10 days ago”
       这样就实现了使用shell命令作日期的计算了
相关文章
相关标签/搜索