- 论坛徽章:
- 1
|
awk本来就有时间处理函数。strftime和mktime。- $ cat file.txt
- Sat May 19 13:40:02 CST 2012 is 13213213
- Sat May 19 19:37:43 CST 2012 is 1012122
- Sat May 19 13:40:03 CST 2012 is 13213213
- Sat May 19 19:37:42 CST 2012 is 1012122
- Sat May 19 13:40:03 CST 2012 is 13213213
- Sat May 19 19:37:43 CST 2012 is 1012122
复制代码- $ awk 'BEGIN{map["Jan"]="01";map["Feb"]="02";map["Mar"]="03";map["Apr"]="04";map["May"]="05";map["Jun"]="06";map["Jul"]="07";map["Aug"]="08";map["Sep"]="09";map["Oct"]="10";map["Nov"]="11";map["Dec"]="12";FS="[ :]"}{print strftime("%F %H:%M:%S",mktime($8" "map[$2]" "$3" "$4" "$5" "$6)),$10}' file.txt
- 2012-05-19 13:40:02 13213213
- 2012-05-19 19:37:43 1012122
- 2012-05-19 13:40:03 13213213
- 2012-05-19 19:37:42 1012122
- 2012-05-19 13:40:03 13213213
- 2012-05-19 19:37:43 1012122
复制代码 |
|