linux awk 使用的一个例子
1. 场景
从日志中获取漏发奖励的司机id
2. 日志 如下(需要获取一个时间段的 driverIdStr)
::34.484 INFO [DubboServerHandler-10.0.30.43:-thread-] order.service.TOrderInfoServiceImpl: - 调用支付完成登记接口,URL=http://rocky/tOrderHandle/settleTaxiAccount,参数={"phone":"1865558888","cityIdStr":"44","customerIdStr":"4433","driverIdStr":"56398","orderTimeStr":"2018-01-19 14:56:36","activityFlagStr":"2","serviceType":35,"orderPriceStr":"14.00","orderId":"53743"}
3. 过滤出相关日志 继续处理
cat 19.log |grep 'settleTaxiAccount,参数='|awk -F '"driverIdStr":' '{print $2}'|awk -F '[,"]+' '{print $2}' > driverId_19.log #一天的 截取的司机id重定向到 文件中
cat driverId_19.log driverId_20.log |sort|uniq -u > driverId_uniq.log #将多日的司机id 排序 去重 再重定向到结果文件
mysql balabala... #导出已有司机id
comm -23 driverId_uniq.log driver_done.txt # 去除 已有的 -2 不显示在第二个文件中出现的内容;
-3 不显示同时在两个文件中都出现的内容;
-1:不显示在第一个文件中出现的内容 ;
4. sed 一把
cat 19.log 19_1.log 20.log 20_1.log|grep '"cityIdStr":"44"' |grep 'driverIdStr'|sed 's/.*"driverIdStr":"//g'|sed 's/".*$/\r\n/g'|sort|uniq -u > driver_id2.txt
5. 20180524
今天遇到从字符串中摘出文案的小需求(双引号里的文字)
我想到了awk
好用!
grep '过滤数单奖活动出错===>订单号' integral-error-xx.log integral-error-xx.log|awk -F ' ' '{print $1}'|awk -F '.' 'BEGIN {count=0;print "次数:"} {if($3>"13:00:00"){count+=1}} END {print count}'
linux awk 使用的一个例子的更多相关文章
- linux一个例子驱动
我们介绍的驱动称为 short (Simple Hardware Operations and Raw Tests). 所有它做 的是读和写几个 8-位 端口, 从你在加载时选择的开始. 缺省地, 它 ...
- linux awk 一看就懂
awk是什么 awk是linux环境下的一个命令行工具,但是由于awk强大的能力,我们可以为awk工具传递一个字符串,该字符串的内容类似一种编程语言的语法,我们可以称其为Awk语言,而awk工具本身则 ...
- Linux awk命令常见使用方法介绍
Linux awk命令常见使用方法介绍 By:授客 QQ:1033553122 awk运行方式有三种,其中常用的为命令行方式 awk [-F field_separator] '{patter ...
- Linux awk&sed
awk AWK是强大的文本处理工具,擅长对日志文件迚行快速分析. 它丌仅用亍 Linux ,也是任何环境中现有的功能最强大的数据处理引擎之一. 名称得自亍它的发明者 Alfred Aho .Pet ...
- linux awk(good)
一个用awk处理字符串的例子: #!/bin/bash source="nokia201703148855" preffixStr=$(echo $source |awk '{pr ...
- linux awk命令详解
linux awk命令详解 简介 awk是一个强大的文本分析工具,相对于grep的查找,sed的编辑,awk在其对数据分析并生成报告时,显得尤为强大.简单来说awk就是把文件逐行的读入,以空格为默认分 ...
- Linux awk命令详解??????????(研究)
http://blog.chinaunix.net/uid-25120309-id-3801250.html 一. AWK 说明 awk是一种编程语言,用于在linux/unix下对文本和数据进行 ...
- [Linux] AWK命令详解(大全)
转载自:http://caoyanbao.iteye.com/blog/570868 什么是awk? 你可能对UNIX比较熟悉,但你可能对awk很陌生,这一点也不奇怪,的确,与其优秀的功能相比,awk ...
- 理解 Linux shell 中的一个方言:2>&1
理解 Linux shell 中的一个方言:2>&1 2016-11-14 杜亦舒 前言 在使用 linux 命令或者 shell 编程时,这个用法常会遇到 2>&1 如 ...
随机推荐
- 斐讯K2P通过配置文件开启telnet的原理分析
看过几篇教程之后我已经知道怎么备份固件了.但是现在有一个问题,我的本意是把K2P原机带的固件备份出来,用教程上的方法进行开启telnet.备份固件等操作是否会改变固件呢?下面我们来验证这个问题. Op ...
- createFile
#include<iostream> #include<windows.h> #include<stdio.h> using namespace std; int ...
- JQuery的get、post、ajax方法
1.jQuery $.get() 方法 $.get() 方法通过 HTTP GET 请求从服务器上请求数据. jQuery.get( url, [data], [callback] ): 参数: ...
- TD-LTE技术原理与系统设计
王映民 等.人邮2010 E-UTRAN E-NodeB 无线资源管理承载 路由到SGW IP头压缩加密 UE附着MME选择 寻呼 广播 测量 EPC SGW 移动性管理 路由转发 终止寻呼 监听 ...
- Maven 整合 robot framework 进行测试
1. 在maven pom.xml中先配置robot framework的plugin: <plugin> <!-- integration test runner (robot-f ...
- 单臂vlan路由实现过程
单臂路由拓扑图如下: 实现步骤如下: 1)pc的ip自己配置. 2)在交换机的各个端上划分好vlan 下联口:vlan 10 port g1/0/2 vlan 20 port g1/0/3 ...
- I2C裸机驱动程序设计
① I2C(Inter-Integrated Circuit)总线是由飞利浦公司开发的两线式串行总线,用于连接微控制器及其外围设备 ② I2C总线有两根双向信号线 (1)SDA:Serial Data ...
- django 创建QueryDict类型报错
报错信息:django.core.exceptions.ImproperlyConfigured: Requested setting LOGGING_CONFIG, but settings are ...
- redis中算法之——MurmurHash2算法
MurmurHash算法由Austin Appleby发明于2008年,是一种非加密hash算法,适用于基于hash查找的场景.murmurhash最新版本是MurMurHash3,支持32位,64位 ...
- ubuntu 18 常用软件安装
主要内容 1.安装 Ubuntu 18.04 LTS 2.安装 Google Chrome 3.安装 OpenVPN Client 4.安装 Docker CE 5.安装 MySQL Server 转 ...