我需要你的帮助。
仅包含日期的文件,
file.txt
P1,2013/jul/9,2013/jul/14
P2,2013/jul/14,2013/jul/6
P3,2013/jul/7,2013/jul/5
像这样显示输出
P1,2013/jul/9,2013/jul/14,5days
P2,2013/jul/14,2013/jul/6,8days
P3,2013/jul/7,2013/jul/5,2days
awk '
BEGIN {
months = "jan feb mar apr may jun jul aug sep oct nov dec"
OFS = FS = ","
}
function date2time(date, a,mon) {
split(date, a, "/")
mon = 1 + (index(months, a[2])-1)/4
return mktime(a[1] " " mon " " a[3] " 0 0 0")
}
function abs(n) {
return n<0 ? -n : n
}
function diff_days(d1,d2, delta) {
delta = date2time(d1) - date2time(d2)
return int(abs(delta)/86400)
}
{ print $0, diff_days($2, $3) "days" }
'
P1,2013/jul/9,2013/jul/14 ,5days
P2,2013/jul/14,2013/jul/6 ,8days
P3,2013/jul/7,2013/jul/5 ,2days
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)