linux shell grep/awk/sed 匹配tab

时间:2023-02-09 22:26:23

处理文件的命令实在是多, sed, awk, grep等。遇到了需要匹配tab的情况, 记录一下。

例子如下:找出文本中第一列是1的行。

文本a

1    2    3
12    3    31
21    1    3

解法1 : 直接使用正则表达式, ^表示开头, \t表示tab

grep -P "^1\t" a

解法2 : awk循环行,并判断

awk '{if($1 == 1) print $0}' a

解法3: sed 中使用正则,-n 只打印匹配行

sed -n '/^1\t/p' a