zoukankan      html  css  js  c++  java
  • Linux下grep命令查找带有tab(退格)的字符

    需要在日志文件统计删除的主帖,而日志文件是tab(退格)字符隔开的;假设日志文件名叫delete.log。

    保存格式和保存的数据如下,

    删除日期            帖子类型(11为主帖,12为回帖)    帖子id    操作人id

     2011-11-01 00:05       12      71163578        1153089
     2011-11-01 00:19       11      71163800        134379
     2011-11-01 00:19       12      71163801        134379
     2011-11-01 00:20       11      71151662        2064561
     2011-11-01 00:42       11      71163897        719476
     2011-11-01 01:05       11      71164159        2215597
     2011-11-01 03:44       12      71164712        2317663
     2011-11-01 04:40       12      71164820        111
     2011-11-01 04:46       12      71164841        622530
     2011-11-01 05:03       12      71164881        1999836
     2011-11-01 06:23       11      71163794        32254
     2011-11-01 06:27       12      71162281        32254
     2011-11-01 07:12       11      71165688        2296120
     2011-11-01 07:12       11      71165682        2296120
     2011-11-01 07:38       12      71165870        11568
     2011-11-01 07:49       11      71142268        1020
     2011-11-01 08:20       12      71167000        634940
     2011-11-01 08:38       11     70948995        604153
     2011-11-01 08:40       12      71167508        2100858
     2011-11-01 08:59       12      71168173        952148

    从日志文件上,如果用命令cat delete.log |grep '11'|wc ,则会把所有日志都统计出来。

    可以看到每行的11的左右都有tab(退格)符,所以可以通过“tab(退格)11tab(退格)”的正则表达式来精确查找。

    但如果使用命令cat delete.log |grep ' 11 '|wc 或者cat delete.log |grep '\t11\t'|wc 确一个也查不出来。

    其实在linux中要正确匹配tab(退格)符有两种方式

    1:用 grep  $' '       你的文件

    2:用 grep '按CTRL+V 键,再按TAB键'      你的文件

    再回到上面的问题,则可以用以下的命令

    cat delete.log |grep $' '11$' ' |wc

    或者

    cat delete.log |grep ‘CTRL+V,TAB11CTRL+V,TAB’|wc

  • 相关阅读:
    WINCE6.0+S3C6410睡眠和唤醒的实现
    WINCE6.0+S3C6410的触摸屏驱动
    S3C6410的Bootloader的两个阶段BL1和BL2编译相关学习
    amix vim vimrc 3.6 [_vimrc x64 vim (WorkPlace)]配置
    异常的开销
    A C# Reading List by Eric Lippert (ZZ)
    SQL SERVER 2008中定时备份数据库任务的创建与删除
    ASP.NET26个常用性能优化方法
    如何使用四个语句来提高 SQL Server 的伸缩性
    Cookies揭秘 [Asp.Net, Javascript]
  • 原文地址:https://www.cnblogs.com/chenhuan001/p/6894537.html
Copyright © 2011-2022 走看看