- 论坛徽章:
- 0
|
本帖最后由 emilylinux 于 2014-08-15 17:05 编辑
现有log中截取出的时间标记为如下格式:
15/Aug/2014:01:31:56
我想用当前的时间减去这个时间获得一个时间差以此来判断该时间离当前时间相比是否delay 过久。
当前时间利用 date +%s 获得秒数时间,得到时间差以后再通过求余换回_day_hour_min_ss.
上面这个截取的时间本来想用 -d的 和%s同样实现, 但是这个格式-d无法识别。
网上搜索之后似乎只有这种格式才识别:2014/08/15 01:31:56,需要将格式转化为该种格式
org formate: 15/Aug/2014:01:31:56
target formate: 2014/08/15 01:31:56
$ date -d "2014/08/15"
Fri Aug 15 00:00:00 EDT 2014
以下是我的一种比较拖沓的写法,有没有其他更简洁的方法,另外:string 形式的月份, Aug, 我要如何转化成相应的两位数月份eg. 08.
$ echo "15/Aug/2014:01:31:56"|sed 's/\:/\//g'|awk -F"/" '{print $3"/"$2"/"$1" "$4":"$5":"$6}'
2014/Aug/15 01:31:56
|
|