原始日志如下:

$more text.log
2018-07-16 00:00:03 [DEBUG] request setInformation params:{"msg":"{\"to\":\"3685836021744CCAA36A8D11759A336F\",\"msgStamp\":\"1531670403377\",\"msgId\":\"a1e910cffcec45ba9c0a59e73a250ffe\",\"msgTxt\":\"{\\\"template\\\":\\\"{\\\\\\\"controlInfo\\\\\\\":{\\\\\\\"like\\\\\\\":false,\\\\\\\"loop\\\\\\\":false,\\\\\\\"state\\\\\\\":\\\\\\\"PAUSED\\\\\\\"},\\\\\\\"titleButtons\\\\\\\":[{\\\\\\\"imageUrl\\\\\\\":\\\\\\\"https://s.xxxcdn.com/mobile-app/icon/media/media_player_album.png\\\\\\\",\\\\\\\"linkUrl\\\\\\\":\\\\\\\"xxx://media/v3/detail?id=2998398&appId=RC528E2DD8E745E195173D9F8BE48436&style=planB\\\\\\\"}],\\\\\\\"appId\\\\\\\":\\\\\\\"RC528E2DD8E745E195173D9F8BE48436\\\\\\\",\\\\\\\"style\\\\\\\":\\\\\\\"planB\\\\\\\",\\\\\\\"item\\\\\\\":{\\\\\\\"id\\\\\\\":\\\\\\\"9766476\\\\\\\",\\\\\\\"title\\\\\\\":\\\\\\\"为何\\\\u201c双1
1\\\\u201c苏宁对掐京东?\\\\\\\",\\\\\\\"subtitle\\\\\\\":\\\\\\\"元气少女情报局\\\\\\\",\\\\\\\"type\\\\\\\":\\\\\\\"link\\\\\\\",\\\\\\\"imageType\\\\\\\":\\\\\\\"circle\\\\\\\",\\\\\\\"imageUrl\\\\\\\":\\\\\\\"http://fdfs.xmcdn.com/group13/M04/78/3F/wKgDXlYFJo6w5U8XAAG459Xxv6M451_mobile_large.jpg\\\\\\\",\\\\\\\"extend\\\\\\\":\\\\\\\"\\\\\\\",\\\\\\\"offset\\\\\\\":\\\\\\\"287\\\\\\\",\\\\\\\"duration\\\\\\\":\\\\\\\
"287\\\\\\\"},\\\\\\\"copyright\\\\\\\":{\\\\\\\"summary\\\\\\\":\\\\\\\"内容来自:喜马拉雅\\\\\\\",\\\\\\\"iconUrl\\\\\\\":\\\\\\\"\\\\\\\"}}\\\",\\\"event\\\":\\\"ON_PAUSED\\\",\\\"appid\\\":\\\"RC528E2DD8E745E195173D9F8BE48436\\\",\\\"type\\\":\\\"Media\\\",\\\"version\\\":\\\"3.0.0\\\"}\",\"from\":\"0302041802012703\",\"msgTopic\":\"event\"}"}
2018-07-16 00:00:03 [DEBUG] request setInformation params:{"msg":"{\"msgStamp\":\"1531670352272\",\"msgId\":\"CC5D2215C8C04557A8005C1C8E6251E2\",\"from\":\"E33FCE60E7294A61B84C43C1A171DFD8\",\"to\":\"79EB05248A8938E6E9474C8ECA4CA774\",\"msgTxt\":\"{\\n \\\"type\\\": \\\"chat\\\",\\n \\\"template\\\": \\\"{\\\\\\\"tts\\\\\\\":\\\\\\\"在呢\\\\\\\"}\\\",\\n \\\"appid\\\": \\\"E33FCE60E7294A61B84C43C1A171DFD8\\\",\\n \\\"feedback\\\": {\\n \\\"voiceUrl\\\": \\\"\\\",\\n \\\"voice\\\": \\\"若琪\\\"\\n }\\n }\",\"msgTopic\":\"card\"}"}

要获取每个appid的次数

grep '"appid\\\\\\":\\\\\\"[^"]*' -o text.log| sort | uniq -c | sort -rn

结果如下:

   2313 "appid\\\":\\\"RC528E2DD8E745E195173D9F8BE48436\\\
1855 "appid\\\":\\\"R165ECD08C90491B89C809753D1F322F\\\
1841 "appid\\\":\\\"R40913E89BFF4C79A210418E6E5BE663\\\
478 "appid\\\":\\\"R9EDC9514BED480BA97E0C3BEC7A7828\\\
423 "appid\\\":\\\"R7C638312DA94C54BFE5B3BE2FE33E44\\\
384 "appid\\\":\\\"com.xxx.homebase\\\
359 "appid\\\":\\\"R233A4F187F34C94B93EE3BAECFCE2E3\\\
14 "appid\\\":\\\"E33FCE60E7294A61B84C43C1A171DFD8\\\
10 "appid\\\":\\\"R786530EA1884AACA79792C04A833885\\\
1 "appid\\\":\\\"1106500120\\\

感谢老神医!

谢谢

linux grep 取出特定字符串并统计个数的更多相关文章

  1. JS取出特定字符前后的字符串,针对一串字符里面的单个字符前后的字符串

    //针对一串自负里面的单个字符前后的字符串<!doctype html> <html> <head> <meta charset="utf-8&qu ...

  2. C#分割字符串并统计重复出现的次数

    static void Main(string[] args) { string ss = "12345678904682qwertyuioplkjhgfdsazxcvbnmmlpokuhy ...

  3. 给定任意一个字符串,使用 for in 语句来统计字符出现的个数

    //找出字符串中的数字 var str = 'haj123sdk54hask33dkhalsd879'; /*function findNum(str){ var arr = []; var tmp ...

  4. c 统计字符串中字符出现的个数

    1.单纯用数组来解题 思路:从左往右循环,每次碰到一个字符就和左边的字符串比较,如果有相同的就右移,如果没有找到相同的就从这个位置向右统计个数并输出. #include<stdio.h> ...

  5. linux shell: 搜索字符串,剔除包含特定字符的行

    搜索代码中出现CONFIG_BOOTARGS的行,但又不希望有#define和#undef, 暂时不知带如何直接用一个语句做到,因此用了如下三个语句. find . -type f | xargs g ...

  6. 如何替换某文件中的所有的特定字符?---linux sed命令(文本编辑命令) (转载)

    转自:http://blog.csdn.net/year_9/article/details/20318407 sed是一个很好的文件处理工具,主要是以行为单位进行处理,可以将数据行进行替换.删除.新 ...

  7. 设在起始地址为STRING的存储空间存放了一个字符串(该串已存放在内存中,无需输入,且串长不超过99),统计字符串中字符“A”的个数,并将结果显示在屏幕上。

    问题 设在起始地址为STRING的存储空间存放了一个字符串(该串已存放在内存中,无需输入,且串长不超过99),统计字符串中字符"A"的个数,并将结果显示在屏幕上. 代码 data ...

  8. Linux grep/egrep命令详解

    grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹 配的行打印出来 grep搜索成功,则返回0,如果搜索不成功,则返回1,如果搜索的文件不存在,则返回2. grep的规则表达式( ...

  9. linux grep 命令

    Linux系统中grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹 配的行打印出来.grep全称是Global Regular Expression Print,表示全局正则表达 ...

随机推荐

  1. Visual Studio Code-GO tasks 设置 (实现在vsc下直接编译输出的功能)

    Visual Studio Code -GO 使用过程中发现,如果要编译输出某个文件需要去cmd窗口才行,感觉特别麻烦网上一直没找到解决办法,这几天查看Visual Studio Code文档发现它提 ...

  2. UVA 11624-Fire!【双BFS】

    <题目链接> 题目大意: 你的任务是帮助J走出一个大火蔓延的迷宫.J每分钟可以超上下左右四个方向移动,而所有着火的格子每一分钟都会往四个方向蔓延一格.迷宫中有一些障碍,J和火都无法进入.当 ...

  3. Autodesk系列软件下载

    摘要: 写在前面:下载后如有需要压缩密码的请先使用压缩软件(如:2345好压)打开压缩包,在压缩包的注释或者文本信息中会给出压缩密码!如若没有请私信! 1.3ds Max软件(64位) Autodes ...

  4. ASP.NET Core 文件系统

    ASP.NET Core 文件系统 静态文件 目录浏览 默认页面 MIME类型配置 实战文件服务器  紧接上一讲 中间件 之后,今天来我们来讲一下关于 ASP.NET  Core 中静态文件服务. 什 ...

  5. 【Ray Tracing in One Weekend 超详解】 光线追踪1-5

    一天一篇,今天来学习第7章 (散射)漫反射材质 Chapter7: Diffuse Materials Preface 从这一章开始,我们将通过光线追踪制作一些逼真的材质. 我们将从漫射(磨砂)材料开 ...

  6. 关于“UI线程”

    http://www.cppblog.com/Streamlet/archive/2013/05/05/199999.html 缘起 这是一篇找喷的文章. 由于一些历史原因和人际渊源,周围同事谈论一些 ...

  7. 【linux】linux下对java程序生成dump文件,并使用IBM Heap Analyzer进行分析,查找定位内存泄漏的问题代码

    1.首先,java程序启动在linux,怎么生成dump文件? 1>第一步,首先你需要得到java程序的PID,最简单的方法使用如下命令 ps -ef|grep java 或者如果是docker ...

  8. 面向对象数据库(Object Oriented Databases)

    前面说几句费话.如今正在从事面向对象数据库在国内的推广工作,假设有兴趣能够与我联系. 假设有不论什么问题能够私信我,也能够到我们站点上 面向对象数据库交流社区 来向我提问,我一定以最快的速度解答. 想 ...

  9. java 线程池 使用实例

    在前面的文章中,我们使用线程的时候就去创建一个线程,这样实现起来非常简便,但是就会有一个问题: 如果并发的线程数量很多,并且每个线程都是执行一个时间很短的任务就结束了,这样频繁创建线程就会大大降低系统 ...

  10. Java代码常见的十种错误

    每一个程序员在编写代码的过程中都免不了出现错误或是小的失误,这些小的错误和失误往往使得程序员还得返工.那么,如何才能尽量避免这些错误的发生呢?笔者总结只有在日常的编写代码中总结出经验,在这篇文章中,笔 ...