在UNIX中grep一个选项卡

南笙酒味 提交于 2020-02-27 09:01:39

如何在Unix平台上的文件中grep tab(\\ t)?


#1楼

答案更简单。 写你的grep并在引用类型中选项卡键,它至少在ksh中运行良好

grep "  " *

#2楼

一个很好的选择是使用'sed as grep'(如本经典的sed教程中所述 )。

sed -n 's/pattern/&/p' file

示例(适用于bash,sh,ksh,csh,..):

[~]$ cat testfile
12 3
1 4 abc
xa      c
        a       c\2
1 23

[~]$ sed -n 's/\t/&/p' testfile 
xa      c
        a       c\2

[~]$ sed -n 's/\ta\t/&/p' testfile
        a       c\2

#3楼

如果使用GNU grep,您可以使用Perl样式的正则表达式:

grep -P '\t' *

#4楼

一种方法是(这是与Bash)

grep -P '\t'

-P打开Perl正则表达式,因此\\ t将起作用。

正如用户放松所说,它可能是特定于GNU grep。 如果shell,编辑器或终端允许,可以选择在其中插入一个选项卡。


#5楼

使用gawk,将字段分隔符设置为tab(\\ t)并检查字段数。 如果超过1,则有/是标签

awk -F"\t" 'NF>1' file
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!