使用awk内容匹配处理日志获取指定信息

1. 匹配指定天数的点击日志文件中由指定小时和分钟开头的日志(文件内分隔符为@_@):

awk -F "@_@" '{if($1 ~ /2017-03-18T04:43/)print NR,$1}' click.log_2017-03-18T04

2. sed对内容进行替换操作:

sed 's/\t/ /g' filename \\将TAB替换成一个空格,filename是你要操作的文件名

send 's/-/\t/' file \\-换成Tab

3. 输出指定分隔符分割的文件中的第一列:

awk-F '[ :\t|]' '{print $1}' file 按照正则表达式的值做为分隔符,这里代表空格、:、TAB、|同时做为分隔符

4.  经典社区问答:

有个文件,只有一行,内容如下:

AAA_FAH_Flashbackup.tl--------------------------------------xxxxxxxxxxxx--------NA,AAA_AIR_Classic_One_To_One.tl--------------------------------7.8_20150730--------this

is some

comments.,AAA_MP_MOptdup_.tl----------------------------------------7.8_20150716--------this

is some

comments,AAA_DP_AABAC.tl---------------------------------------------7.8_20150804--------This

is some comments may, have

请问怎么用awk显示出来这个呢?

AAA_FAH_Flashbackup.tl,AAA_AIR_Classic_One_To_One.tl,AAA_MP_MOptdup_.tl,AAA_DP_AABAC.tl

-------------------------------------------------------------------------------------

下面是我的回答之一(找文字规律咯):

1338 $ sed 's/-/\t/g' file|awk -F "[,\t]+" '{print $1,$4,$7,$10}'

AAA_FAH_Flashbackup.tl AAA_AIR_Classic_One_To_One.tl AAA_MP_MOptdup_.tl AAA_DP_AABAC.tl

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容