假设要在 api.log.201707201830 文件中,(此文件的多个字段数据以不可见字符^A(键盘上按下Ctrl+V+A)分隔),要输出第70个字段:
awk -F '^A' '{print $70}' api.log.201707201830

要判断第25个字段=9的数据,输出第70个字段:
awk -F '^A' '($25==9){print $70}' api.log.201707201830

如果判断的值是字符串,就要加双引号(此案例以\x01分隔)
awk -F '\x01' '($1=="a17cdca4daa7a92e473dc1a532da5aaf"){print $1}' yumiad_event.2017072016

如果是判断多个条件,用&&连接

awk -F '\x01' '($1=="a17cdca4daa7a92e473dc1a532da5aaf" && $14==10026 && $13==8){print $1,$2,$5,$14,$13}' yumiad_event.2017072016


对于没有固定分隔符的数据,可以使用grep:

如下案例表示在下面格式的很大的日志文件中查找 cornID=xyz 并且 adType=8 并且 providerID=10026:

mediation/report_partner.php           partnerID=10002&uuid=8b633a6e57060f841ffc35106472810a&cornID=a17cdca4daa7a92e473dc1a532da5aaf&versionID=-&channelID=-&deviceType=3&mac=9c%3A41%3A7c%3A76%3A44%3A20&deviceKey=356405052830313&time=1500537724706&os=android&netType=wifi&deviceNo=GT-N7108&language=zh_CN&longitude=-&latitude=-&planTime=1499323004&optimization=0&PLMN=46003&sdkver=160&rid=a8d3d425f883fce0e64bc25469890e84&androidID=75673d3aa19fb2ac&trans=abc%2Cdef%2Cghi&ad_list=%5B%7B%22clickArea%22%3A%7B%7D%2C%22result%22%3A%221%22%2C%22interfaceType%22%3A%22API%22%2C%22keyID%22%3A%22%22%2C%22action%22%3A%22request%22%2C%22pid%22%3A%2280cd137fd603fb5f0685020ae0092a9d%22%2C%22eventTime%22%3A%221500537724346%22%2C%22providerID%22%3A%2210026%22%2C%22adType%22%3A%222%22%7D%2C%7B%22clickArea%22%3A%7B%7D%2C%22result%22%3A%221%22%2C%22interfaceType%22%3A%22API%22%2C%22keyID%22%3A%22%22%2C%22action%22%3A%22response%22%2C%22pid%22%3A%2280cd137fd603fb5f0685020ae0092a9d%22%2C%22eventTime%22%3A%221500537724691%22%2C%22providerID%22%3A%2210026%22%2C%22adType%22%3A%222%22%7D%2C%7B%22clickArea%22%3A%7B%7D%2C%22result%22%3A%221%22%2C%22interfaceType%22%3A%22API%22%2C%22keyID%22%3A%22%22%2C%22action%22%3A%22exposure%22%2C%22pid%22%3A%2280cd137fd603fb5f0685020ae0092a9d%22%2C%22eventTime%22%3A%221500537724692%22%2C%22providerID%22%3A%2210026%22%2C%22adType%22%3A%222%22%7D%2C%7B%22clickArea%22%3A%7B%7D%2C%22result%22%3A%221%22%2C%22interfaceType%22%3A%22API%22%2C%22keyID%22%3A%22%22%2C%22action%22%3A%22round%22%2C%22pid%22%3A%2280cd137fd603fb5f0685020ae0092a9d%22%2C%22eventTime%22%3A%221500537724692%22%2C%22providerID%22%3A%2210026%22%2C%22adType%22%3A%222%22%7D%5D

查询命令:

cat api.2017072016.log | grep -i 'cornID=xyz' | grep -i 'adType=8' | grep -i 'providerID=10026' 

Linux中的 awk查找日志中的相关记录的更多相关文章

  1. linux 如何快速的查找日志中你所要查找的信息

    在工作中我总会通过日志来查找相关问题,但有时候日志太多有不知道又不知道日志什么时候打印的,这时我们可以通过一下方法来查找: 1.把目录跳到你日志文件存放的地方 2.grep  关键字  *    例如 ...

  2. vue中的v-if查找数组中最后一个,给他加上新的样式

    vue: var app=new Vue({ el:".xiaomi", data: { typeInfo: [{img:"image/type/phone_1.webp ...

  3. SQL 查询数据库中包含指定字符串的相关表和相关记录

    declare @str varchar(100)set @str='我要找的' --要搜索的字符串 declare @s varchar(8000)declare tb cursor local f ...

  4. 从输出日志中提取接口的入参和返回做为用例导入到excel中

    1  背景 接口用例已经在项目中的yml文件中编写,但是yml文件不能做为交付文档用,本文对工作中从接口输出日志中提取用例信息,并导入到excel文件中做了总些 2  工具 idea,notepad+ ...

  5. linux日志中查找关键字、前几行、结尾几行,Linux的find用法示例

    linux在日志中查找关键字.前几行.结尾几行,Linux的find用法示例 1.linux在日志中查找关键字.前几行.结尾几行 1.1查看日志 前 n行: 1.2查看日志 尾 n行: 1.3根据 关 ...

  6. Linux日志中如何查找关键字及其前后的信息

    在日常工作中,我们经常需要查看日志,比如可以通过 tail 命令实时查看日志,也可以通过 cat 等命令查看日志信息. 但现在我们要讨论的是,如何从日志中通过关键字过滤出我们想要的内容,方法有多种,今 ...

  7. (转)linux中项目部署和日志查看

    1 查找进程 ps -ef | grep java   查看所有关于java的进程 root     17540     1  0  2009 ?        01:42:27 /usr/java/ ...

  8. 在linux中使用shell来分析统计日志中的信息

    在运维工作中,要经常分析后台系统的日志,通过抓取日志中的关键字信息,对抓取结果进行统计,从而为监控结果提供基础数据.下面的shell演示了如何从大量的日志中取得想要的统计结果.其中展示了各种有趣的命令 ...

  9. linux下查找文件中空行的行号

    linux下查找文件中空行的行号 linux下查找文件中空行的行号 以aa.txt举例: 方法1:sed -n '/[a-zA-Z0-9@#$%^&*]/!=' aa.txt 方法2:grep ...

随机推荐

  1. 学而精计算机公共基础学习之路TEST1

    算法 一:算法基本概念 算法是个什么概念学了这么久的程序尽然没有听说过,其实算法就是为了解决问题那么怎么准确完整的解决这个问题就是算法.所以我们所写的程序就可以说为对算法的描述,但是程序编制是不能有于 ...

  2. DALI解码模块

    DALI-MOD2接口模块使用手册 一.概述(联系人:张先生,电话:13923882807,QQ:813267849) 一.概述 欢迎使用本公司的DALI解码模块,该模块支持"DALI第一套 ...

  3. 利用 HTML5 WebGL 构建的 3D 拓扑图

    现在,3D 模型已经用于各种不同的领域.在医疗行业使用它们制作器官的精确模型:电影行业将它们用于活动的人物.物体以及现实电影:视频游戏产业将它们作为计算机与视频游戏中的资源:在科学领域将它们作为化合物 ...

  4. JS-输入金额校验

    function clearNoNum(obj){    obj.value = obj.value.replace(/[^\d.]/g,"");  //清除"数字&qu ...

  5. jquery取前、后、父、子元素

    前.prev(); 后.next(); 父.parent(); 子.children(); 注意:前的前是.prev().prev(),例如前元素无i,但前的前的i元素有i,不能写成.prev('i' ...

  6. 用SecureCRT来上传和下载文件

    用SSH管理linux服务器时经常需要远程与本地之间交互文件.而直接用SecureCRT自带的上传下载功能无疑是最方便的,SecureCRT下的文件传输协议有ASCII.Xmodem.Zmodem. ...

  7. java URL和URLConnection

    */ .hljs { display: block; overflow-x: auto; padding: 0.5em; color: #333; background: #f8f8f8; } .hl ...

  8. 豹哥嵌入式讲堂:ARM知识概要杂辑(2)- 第一款Cortex-M处理器

    1.天生荣耀:ARM Cortex-M处理器由来 ARM公司自2004年推出ARMv7内核架构时,摒弃了以往"ARM+数字"这种处理器命名方法(ARM11之前的处理器统称经典处理器 ...

  9. LAMP_yum安装

    前言,人总是会越来越懒,说真的,我是摸着良心说话的 开始总是喜欢源码安装,因为可以定制,而且能显得有格调(逼格),但是一安装就要半天,还有各种依赖包的安装,各种报错,不忍直视 下面是我摘自晚上的一篇l ...

  10. SSH 面试题集锦

    1.  BeanFactory的作用是什么?   [中] BeanFactory是配置.创建.管理bean的容器,有时候也称为bean上下文.Bean与bean的依赖关系,也是由BeanFactory ...