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 '\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命令查找带有tab(退格)的字符的更多相关文章
- LINUX 下grep命令查找
当出现查找文件出现匹配到二进制文件时,大概是因为文件同时含有文本文件与二进制文件,需要加上 grep -a,就可以解决问题.
- linux下grep命令的使用实例
#多文件查询grep leo logs.log logs_back.log #查找即包含leo又包含li的行grep leo logs.log | grep li #查找匹配leo或者匹配li的行gr ...
- Linux下grep命令
2.grep命令 grep (global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来)是一种强大的文本 ...
- linux下grep命令详解
参数: -a 或 --text : 不要忽略二进制的数据. -A<显示行数> 或 --after-context=<显示行数> : 除了显示符合范本样式的那一列之外,并显示该行 ...
- linux 下find命令 --查找文件名
1.在某目录下查找名为"elm.cc"的文件 find /home/lijiajia/ -name elm.cc 2.查找文件名中包含某字符(如"elm")的文 ...
- Linux 下 grep 命令常用方法简介
1.从单个文件中搜索指定的字符串: $ grep "literal-string" filename 该命令会输出字符串在文件中所在行的内容,如果字符串没有空格,则可以不加双引号. ...
- linux下grep命令笔记
grep -i 不区分大小写 --color 添加颜色 alias grep=‘grep --color=auto’ -v 显示没有被模式匹配到的行 -o 只显示 ...
- Linux下Oracle的sqlplus中上下左右退格键无法使用
一.配置yum源并安装readline* 配置本地yum 1.挂载光盘 mount /dev/cdrom /mnt/media 2,新建本地yun源的配置文件 vi /etc/yum.repos.d/ ...
- Linux下的搜索查找命令的详解(find)
4.find Linux下find命令在目录结构中搜索文件,并执行指定的操作.Linux下find命令提供了相当多的查找条件,功能很强大.由于find具有强大的功能,所以它的选项也很多,其中大部分选项 ...
随机推荐
- 各种linux小操作
1.查看路由表 命令:route -n ; netstat -r 跟踪网络地址:traceroute www.16 3.com 2.查看一台机器IP地址和与其对应的域名 命令:nslookup; di ...
- js 创建多行字符串
function heredoc(fn) { ,-).join('\n') + '\n' } var tmpl = heredoc(function(){/* !!! 5 html include h ...
- JSP九大内置对象与Servlet学习笔记[转]
我们常说的JSP有九大内置对象分别为:request.response.session.out.pagecontext.page.exception.application.config. 我们知道, ...
- 编写高质量代码_改善C++程序的150个建议 读书笔记
这几天看了下这本书<编写高质量代码_改善C++程序的150个建议>,觉的蛮有收获的,再次记录下自己以前不清晰的知识点,以供学习. 编写符合标准的main函数 C语言标准规定了main函数的 ...
- 基于ThinkPHP的在线编辑器调用
开源的在线编辑器有很多,比如FCKEditor,UEditor,Kindeditor等,调用方式也都大同小异 下面列举UEditor在线编辑器插件在ThinkPHP里面的应用 1.Ueditor下载地 ...
- git远端删除被提交后又被加到.gitignore的文件
远端删除文件而不影响本地文件 git rm [-r] --cached file_or_dir_name 利用.gitignore来自动删除所有匹配文件 我试过网上推荐的写法 git rm --cac ...
- JS_SINA股票接口
深成指: <script type="text/javascript" src="http://hq.sinajs.cn/list=sz399001" c ...
- GitHub 二次验证收不到短信咋办?
身在天朝,用了国外的代码托管服务,会有些烦恼的. 网速慢就不说了,如果启用了二次验证,短信收不到那就悲催了. 之前的都能收到短信的,突然间尝试了很多天都不行,联系github的客服,几次的答复如下: ...
- 内省Introspector(反射操作javaBean)
一:内省是一种特殊的反射,来更方便的操作javaBean对象,通过内省可以获取到类字节码的描述器, 然后解剖每一个字段,获取每个字段的读写方法,即get/set方法的反射,然后获取或者是封装bean的 ...
- MTK 关闭安全模式
1.当 Android 设备在安全模式(Safe Mode)下工作时,任何的第三方应用程序或相关文件(主要为apk应用程序文件)都不可以使用,但可以使用 Android 设备的任务管理器选项进行卸载或 ...