linux 中 grep匹配 区分空格和制表符

 

001、

复制代码
[root@pc1 test]# ls
a.txt
[root@pc1 test]# cat a.txt                           ## 测试数据
aa bb cc
aa      jj      kk
aa mm   uy
aa      mm      ww
[root@pc1 test]# grep "aa\t" a.txt                   ##\t在这里不能被识别, \被认为是转义字符仅匹配为t
[root@pc1 test]# grep "aa[[:space:]]" a.txt          ## [[:space:]] 匹配了空格和制表符
aa bb cc
aa      jj      kk
aa mm   uy
aa      mm      ww
[root@pc1 test]# grep "aa[[:blank:]]" a.txt          ## [[:blank]] 匹配了空格和制表符
aa bb cc
aa      jj      kk
aa mm   uy
aa      mm      ww
复制代码

 

002、解决方法

a、

复制代码
[root@pc1 test]# ls
a.txt
[root@pc1 test]# cat a.txt              ## 测试数据
aa bb cc
aa      jj      kk
aa mm   uy
aa      mm      ww
[root@pc1 test]# grep $'aa\t' a.txt     ## 利用$符号展开制表符
aa      jj      kk
aa      mm      ww
复制代码

 

b、

复制代码
[root@pc1 test]# ls
a.txt
[root@pc1 test]# cat a.txt                ## 测试数据
aa bb cc
aa      jj      kk
aa mm   uy
aa      mm      ww
[root@pc1 test]# grep -v "aa " a.txt      ## 利用 -v取反结合空格匹配
aa      jj      kk
aa      mm      ww
复制代码

 

c、直接打出制表符

复制代码
[root@pc1 test]# ls
a.txt
[root@pc1 test]# cat a.txt                    ## 测试数据
aa bb cc
aa      jj      kk
aa mm   uy
aa      mm      ww
[root@pc1 test]# grep "aa       " a.txt       ## 直接匹配制表符
aa      jj      kk
aa      mm      ww
复制代码

 。

 

posted @   小鲨鱼2018  阅读(191)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
历史上的今天:
2022-03-27 linux 中判断命令是内部命令还是外部命令
2022-03-27 linux 中创建、查看和取消别名命令
2022-03-27 linux 系统中 双引号“”和单引号‘’转义的区别
2022-03-27 正则表达式通配符 ? 和 * 的区别
2022-03-27 ubuntu中出现:passwd: unrecognized option '--stdin'
2022-03-27 linux 中标准输出重定向、标准错误输出重定向、追加重定向
2022-03-27 linux 中find命令的用法
点击右上角即可分享
微信分享提示