Chinaunix
标题:
计算时间差
[打印本页]
作者:
naoqingxu
时间:
2016-02-04 11:37
标题:
计算时间差
我的时间格式 老简单了
20140129 20140203
20151231 20160101
判断$2 和$1 是否超过两天
环境是HP UX
mktime
date -d
都用不了
请帮帮忙了
难道只能手动换算成秒 来计算吗。。。
作者:
jason680
时间:
2016-02-04 12:17
回复
1#
naoqingxu
$ awk 'function day(d){return(mktime(gensub(/(....)(..)(..)/,"\\1 \\2 \\3 0 0 0","",d))/86400)}day($2)-day($1)>2' FILE
20140129 20140203
作者:
naoqingxu
时间:
2016-02-04 12:56
本帖最后由 naoqingxu 于 2016-02-04 12:57 编辑
jason 哥
mktime 用不了
function mktime is not define -^-
作者:
ly5066113
时间:
2016-02-04 13:35
回复
1#
naoqingxu
http://bbs.chinaunix.net/thread-15781-1-1.html
或者用 perl
作者:
naoqingxu
时间:
2016-02-04 14:02
回复
4#
ly5066113
我是csh,脚本其他部分已经写差不多了
perl 也不太会
作者:
ydzcjj
时间:
2016-02-04 14:45
不能用时间戳这个比较蛋疼
给个参考帖子你。。。你看看有没有提示。。。
http://bbs.chinaunix.net/thread-4178769-1-1.html
作者:
jason680
时间:
2016-02-04 17:28
回复
3#
naoqingxu
http://bbs.chinaunix.net/thread-1772999-1-1.html
[日期时间] 使用Epoch进行日期时间转换和计算的几个Shell小函数
$ awk 'function g(s,p,l){return(substr(s,p,l))}function day(s){y=g(s,1,4);m=g(s,5,2);d=g(s,7,2);Z=int((14-m)/12);Y=y+4800-Z;M=m+12*Z-3;return(int((153*M+2)/5)+d+Y*365+int(Y/4)-int(Y/100)+int(Y/400)-2472633)}day($2)-day($1)>2' FILE
20140129 20140203
作者:
lyhabc
时间:
2016-02-05 14:59
20151231- 20160101|bc
直接减不行?
欢迎光临 Chinaunix (http://bbs.chinaunix.net/)
Powered by Discuz! X3.2