Chinaunix

标题: 时间戳格式转换 [打印本页]

作者: chengyc    时间: 2012-03-10 01:14
标题: 时间戳格式转换
时间戳格式转换:

Linux:

返回从1970年1月1日开始到当前时间(不计闰年)的整秒数

[lmode@fjcsmcbn ~]$ date +%s -d "2010-07-21 00:00:00"
1279641600

[lmode@fjcsmcbn ~]$ awk 'BEGIN{tstamp=mktime("2010 07 21 00 00 00");print tstamp}'
1279641600

Solaris:
由于solaris下,date非GNU;awk对函数扩展不同,只能编写函数


function date2seconds {
    echo "$*" | awk '{
        z=int((14-$2)/12); y=$1+4800-z; m=$2+12*z-3;
        j=int((153*m+2)/5)+$3+y*365+int(y/4)-int(y/100)+int(y/400)-2472633;
        j=j*86400+$4*3600+$5*60+$6
        print j
    }'
}

date2seconds `echo "2010-07-21 00:00:00" | sed 's/-/ /g;s/:/ /g'`

1279670400 // 是GMT+8,即北京时间




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2