python 解决文本难题,求大牛给个高效率的代码 谢谢
如:文件test.log内容如下:10.10.81.15|success|rc=0>>11111111111222222222223333333333310.10.81....
如:文件 test.log 内容如下:
10.10.81.15 | success | rc=0 >>
11111111111
22222222222
33333333333
10.10.81.16 | success | rc=0 >>
11111111111
22222222222
33333333333
aaaaaaaaaaaaa
#allow plug10.10.81.22 | success | rc=0 >>
11111111111
22222222222
33333333333
44444444444
。。。。。。。。。。。。。。。
将10.10.81.15 与10.10.81.16之间的内容保存到10.10.81.15.log文件
将10.10.81.16 与10.10.81.22之间的内容保存到10.10.81.16.log文件
以下类推
用shell
awk '/([0-9]+\.){3}[0-9]+/{a=gensub(/[^0-9]*(([0-9]+\.){3}[0-9]+).*/,"\\1",1,$0);next}{print >a".log"}' test.log
解决, 如何用PYTHON 优美代码 解决
awk -F\| '/>>$/{gsub(/[^0-9.]+/,"",$1);s=$1;next}{print >s".log"}' test.log
Python代码结果 和AWK 一样 展开
10.10.81.15 | success | rc=0 >>
11111111111
22222222222
33333333333
10.10.81.16 | success | rc=0 >>
11111111111
22222222222
33333333333
aaaaaaaaaaaaa
#allow plug10.10.81.22 | success | rc=0 >>
11111111111
22222222222
33333333333
44444444444
。。。。。。。。。。。。。。。
将10.10.81.15 与10.10.81.16之间的内容保存到10.10.81.15.log文件
将10.10.81.16 与10.10.81.22之间的内容保存到10.10.81.16.log文件
以下类推
用shell
awk '/([0-9]+\.){3}[0-9]+/{a=gensub(/[^0-9]*(([0-9]+\.){3}[0-9]+).*/,"\\1",1,$0);next}{print >a".log"}' test.log
解决, 如何用PYTHON 优美代码 解决
awk -F\| '/>>$/{gsub(/[^0-9.]+/,"",$1);s=$1;next}{print >s".log"}' test.log
Python代码结果 和AWK 一样 展开
1个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询