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


当前回答

我从来没有设法使“\t”元字符与grep一起工作。 然而,我发现了两个替代方案:

使用<Ctrl-V> <TAB>(按Ctrl-V然后输入TAB) 使用awk: foo | awk '/\t/'

其他回答

诀窍是在单引号前使用$符号。它也适用于切割和其他工具。

grep $'\t' sample.txt

一种方法是(这是Bash)

grep -P '\t'

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

正如用户unwind所说,它可能是特定于GNU grep的。另一种方法是在shell、编辑器或终端允许的情况下插入一个制表符。

grep "$(printf '\t')"在Mac OS X上为我工作

这对于AIX很有效。我正在搜索包含连接<\t>ACTIVE的行

voradmin cluster status | grep  JOINED$'\t'ACTIVE

 vorudb201   1       MEMBER(g) JOINED        ACTIVE
*vorucaf01   2       SECONDARY JOINED        ACTIVE

答案更简单。编写grep并在引号中输入tab键,它至少在ksh中工作得很好

grep "  " *