shell中如何计算两个时间的时间差?
答:参考代码如下:
start=`date +%s -d “2011-11-28 15:55:37″`
end=`date +%s -d “2011-11-28 15:55:52″`
echo $(($end-$start))
这个前提是能拿到开始和结束时间字串的基础上的。
如果日志文件输出格式是上述的话,还有个方法:
cat 日志文件 | awk ‘/^000/{
start=$2 ” ” $3
end=$4 ” ” $5
stm=mktime(gensub(//, ” “, “g”, start))
etm=mktime(gensub(//, ” “, “g”, end))
print $1 ” – ” etm-stm
}’