您的位置:首页 > 运维架构 > Shell

shell处理时间date

2016-01-27 17:57 597 查看

shell 处理时间

$ date
Thu Jan 21 11:43:00 CST 2016

(1) 获取当前时间

$ date +%Y-%m-%d
2016-01-27

$ date "+%Y-%m-%d %H:%M:%S"
2016-01-27 17:37:31

(2) 一年中的第几天,第几周,一周中的第几天。。。

$ date +%j #一年中的第几天
027

$ date +%d #一个月中的第几天
27

$ date +%w #一周中的第几天(0(周日) --> 6(周六))
3

$ date +%U #一年中的第几周
04

(3) 前后时间,加ago就是前,没有ago就是后

$date -d '1 years ago' "+%Y-%m-%d %H:%M:%S"
2015-01-27 17:54:39

$date -d '1 months ago' "+%Y-%m-%d %H:%M:%S"
2015-12-27 17:54:45

$ date -d '1 days ago' "+%Y-%m-%d %H:%M:%S"
2016-01-26 17:51:45

$date -d '1 hours ago' "+%Y-%m-%d %H:%M:%S"
2016-01-27 16:52:29

$date -d '1 minutes ago' "+%Y-%m-%d %H:%M:%S"
2016-01-27 17:51:45

$date -d '1 seconds ago' "+%Y-%m-%d %H:%M:%S"
2016-01-27 17:52:59

(4) 比较时间

#!/bin/bash

date1="2008-4-09 12:00:00"
date2="2008-4-10 15:00:00"

t1=`date -d "$date1" +%s`
t2=`date -d "$date2" +%s`

if [ $t1 -gt $t2 ]; then
echo "$date1 > $date2"
elif [ $t1 -eq $t2 ]; then
echo "$date1 == $date2"
else
echo "$date1 < $date2"
fi
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: