linux awk复杂场景

本文介绍如何使用Linux命令行工具如awk、grep和base64等,进行日志文件的IP地址过滤统计及TLV数据的base64解密分析,通过实例展示了从多个压缩的日志文件中提取并解析特定格式的数据。

1. linux访问日志ip过滤统计

cat access.log |awk -F '-' '{print $1}'|sort -rn |uniq|awk '{cmd=sprintf("echo -n curl ip.cn/%s", $1);  system(cmd);  print "";}'

 

2. awk分隔后 base64解密,解析tlv

awk -F '","' '{cmd=sprintf("echo -n %s|base64 -d|xxd -ps", $1);  system(cmd);  print "";}'
 

gzip -cd in_pay_client.log.20180826.gz in_pay_client.log.20180827.gz in_pay_client.log.20180828.gz in_pay_client.log.20180829.gz in_pay_client.log.20180830.gz in_pay_client.log.20180831.gz in_pay_client.log.20180901.gz in_pay_client.log.20180902.gz |grep  icData |grep CoreBarPayFeignService |awk -F '"icData":"' '{print $2}'|awk -F '","' '{cmd=sprintf("echo -n %s|base64 -d|xxd -ps", $1);  system(cmd);  print "";}'> /tmp/tlv.log

|grep  icData |grep CoreBarPayFeignService |awk -F '"icData":"' '{print $2}'|awk -F '","' '{cmd=sprintf("echo -n %s|base64 -d|xxd -ps", $1);  system(cmd);  print "";}'


gzip -cd in_pay_client.log.20180826.gz in_pay_client.log.20180827.gz in_pay_client.log.20180828.gz in_pay_client.log.20180829.gz in_pay_client.log.20180830.gz in_pay_client.log.20180831.gz in_pay_client.log.20180901.gz in_pay_client.log.20180902.gz|grep  icData |grep CoreBarPayFeignService |awk -F '"icData":"' '{print $2}'|awk -F '","' '{cmd=sprintf("echo -n %s|base64 -d|xxd -c256", $1);  system(cmd);  print "";}'|grep 9f10 |wc -l

awk分隔后,base64解密并且进行bcd转ascii awk -F '","' '{cmd=sprintf("echo -n %s|base64 -d|xxd -ps", $1);  system(cmd);  print "";}'
按照字符位置进行剪切 cut -c21-24
过滤空白行   grep -v '^\s*$'
 

 

 

转载于:https://my.oschina.net/u/3674060/blog/3036832

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值