utc秒数 linux时间戳,UTC时间与UNIX时间戳之间的转换

将当前系统时间转换为UNIX时间戳

BASH 1

2 $date +%s

1263236513

+%s是date的格式控制,上面命令的意思其实就是将当前系统时间以UNIX时间戳的形式输出。

如果要将任意UTC时间转换为UNIX时间戳的话:

BASH 1

2 $date -d '2010-01-12 utc' +%s

1263254400

相反的如果要将UNIX时间戳转换为UTC时间则是:

BASH 1

2 $date -d '1970-01-01 utc 1263236311 seconds' +%Y-%m-%d-%H:%M:%S

2010-01-12-02:58:31

由此可以看出linux下的date命令还是十分强大的,更详细的介绍参看info date.

使用Python:

将当前系统时间转换为UNIX时间戳

PYTHON 1

2

3 >>> import time

>>> time.time()

1263239477.4449849

如果要将任意UTC时间转换为UNIX时间戳的话:

PYTHON 1

2

3

4

5

6

7

8

9 >>> import time

>>> time.time()

1263239477.4449849

>>> import datetime

>>> d1 = datetime.datetime(2010,1,12,2,28,01)

>>> t1 = time.mktime(d1.timetuple())

>>> print t1

1263234481.0

>>> d2 = time.localtime(t1)

mktime()函数是将time对象转为一个浮点数(即UNIX时间戳)。可以用localtime()再将浮点数转换

为time对象。

相反的如果要将UNIX时间戳转换为UTC时间则使用的是time.localtime()函数。

还有一个很有用的函数就是 time.strptime(string[,format]):

用来从一个字符串中按照一定的格式提取出一个struct_time,例如:

PYTHON 1

2

3 >>> import time

>>> time.strptime("2010-1-12", "%Y-%m-%d")

time.struct_time(tm_year=2010, tm_mon=1, tm_mday=12, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=1, tm_yday=12, tm_isdst=-1)

其中的format转意符跟date命令中的相同,如下:

format转义符对应意义如下

%a 本地简化星期名称

%A 本地完整星期名称

%b 本地简化的月份名称

%B 本地完整的月份名称

%c 本地相应的日期表示和时间表示

%d 月内中的一天(0-31)

%H 24小时制小时数(0-23)

%I 12小时制小时数(01-12)

%j 年内的一天(001-366)#hi.baidu.com/muinlive

%m 月份(01-12)

%M 分钟数(00=59)

%p 本地A.M.或P.M.的等价符

%S 秒(00-59)

%U 一年中的星期数(00-53)星期天为星期的开始

%w 星期(0-6),星期天为星期的开始

%W 一年中的星期数(00-53)星期一为星期的开始

%x 本地相应的日期表示

%X 本地相应的时间表示

%y 两位数的年份表示(00-99)

%Y 四位数的年份表示(000-9999)

%Z 当前时区的名称

%% %号本身

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值