免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1035 | 回复: 0
打印 上一主题 下一主题

转换Unix纪元时间至本地时间 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-12-10 14:35 |只看该作者 |倒序浏览
1.perl
perl -pe 's/^\d+\.\d+/localtime($&)/e;' 时间文件 输入  801281121.112121   iri
12121121212.12111  asda
12212156771212221.12121  gg 输出 Wed May 24 10:05:21 1995   iri
Mon Feb  8 02:06:52 2354  asda
Sun Jul 12 13:10:20 386989812  gg 2. awk awk '{print strftime("%Y-%M-%d %H:%m:%s",$1),$2}' 时间文件输入 801281121.112121   iri
12121121212.12111  asda
12212156771212221.12121  gg 输出 1995-05-24 10:05:801281121 iri
2354-06-08 02:02:12121121212 asda
386989812-10-12 13:07:12212156771212222 gg 显然perl的输出更人性化一些,当然awk的格式化输出调整后,也可以得到perl的效果                                       create day: Wed Dec 10 14:37:07 CST 2008                                       BY  IORI                                       stay in  sina


备注AWK 时间函数及格式定义


strftime("%H%M", $time)
awk调时间函数会比shell命令行快,一个是调函数,一个是调命令
%a
星期几的缩写(Sun)
%A
星期几的完整写法(Sunday)
%b
月名的缩写(Oct)
%B
月名的完整写法(October)
%c
本地日期和时间
%d
十进制日期
%D
日期 08/20/99
%e
日期,如果只有一位会补上一个空格
%H
用十进制表示24小时格式的小时
%I
用十进制表示12小时格式的小时
%j
从1月1日起一年中的第几天
%m
十进制表示的月份
%M
十进制表示的分钟
%p
12小时表示法(AM/PM)
%S
十进制表示的秒
%U
十进制表示的一年中的第几个星期(星期天作为一个星期的开始)
%w
十进制表示的星期几(星期天是0)
%W
十进制表示的一年中的第几个星期(星期一作为一个星期的开始)
%x
重新设置本地日期(08/20/99)
%X
重新设置本地时间(12:00:00)
%y
两位数字表示的年(99)
%Y
当前月份
%Z
时区(PDT)
%%
百分号(%)

本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/15758/showart_1712512.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP