需要在日志文件统计删除的主帖,而日志文件是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 '\t11\t'|wc 或者cat delete.log |grep '\\t11\\t'|wc 确一个也查不出来。
其实在linux中要正确匹配tab(退格)符有两种方式
1:用 grep $'\t' 你的文件
2:用 grep '按CTRL+V 键,再按TAB键' 你的文件
再回到上面的问题,则可以用以下的命令
cat delete.log |grep $'\t'11$'\t' |wc
或者
cat delete.log |grep ‘CTRL+V,TAB11CTRL+V,TAB'|wc
以上内容就是本文的全部内容,希望对大家有所帮助。
本文向大家介绍详解linux grep命令,包括了详解linux grep命令的使用技巧和注意事项,需要的朋友参考一下 本文介绍了linux grep命令,具体如下: 1.作用 Linux系统中grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹 配的行打印出来。grep全称是Global Regular Expression Print,表示全局正则表达式版本,它的使用权限是
本文向大家介绍Grep 命令有什么用? 如何忽略大小写? 如何查找不含该串的行?相关面试题,主要包含被问及Grep 命令有什么用? 如何忽略大小写? 如何查找不含该串的行?时的应答技巧和注意事项,需要的朋友参考一下 答案: 是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹 配的行打印出来。 grep [stringSTRING] filename grep string filenam
问题内容: 经过Google的几次搜索后,我想到的是: 这非常不方便,并且会输出不需要的文本,例如mime类型信息。有更好的解决方案吗?我在同一文件夹中有很多图像和其他二进制文件,还有很多文本文件需要搜索。 问题答案: 我知道这是一个旧线程,但是我偶然发现了它,并认为我会分享我的方法,我发现这是一种非常快速的方法,可用于仅查找非二进制文件: grep 的选项告诉它立即忽略二进制文件,而连同的选项会
问题内容: 我使用Golang编写了简单的脚本来grep带有某些参数的日志文件。这是我的shell命令 我想使用软件包在Golang中运行以上命令。这是我的代码。 目前,由于,上面的截图不起作用。你们中的任何人/女士都可以解决此问题吗?非常感谢。 问题答案: 管道()是由Shell程序(如bash)实现的。如果要使用它们,则应执行shell传递包含管道程序调用的命令:
本文向大家介绍Linux命令下crontab命令,包括了Linux命令下crontab命令的使用技巧和注意事项,需要的朋友参考一下 crontab是一个用来设置、删除或显示供守护进程cron执行的定时任务的命令。每一个用户都可以拥有属于自己的定时任务,定时任务文件默认以用户名命名,并放在/var/spool/cron目录,该目录普通用户无访问权限。 可以通过cron.allow 和 cron.
本文向大家介绍linux下source命令使用详解,包括了linux下source命令使用详解的使用技巧和注意事项,需要的朋友参考一下 Linux Source命令及脚本的执行方式解析 当我修改了/etc/profile文件,我想让它立刻生效,而不用重新登录;这时就想到用source命令,如:source /etc/profile 对source进行了学习,并且用它与sh 执行脚本进行了对比,现在