有这样一个文件
1\t2 1\t3 3\t\t4
假设我们需要匹配第一行,即1\t2
正常肯定是想这样
cat 1 | grep '1\t2'
然而并不行,因为,‘\t’里的\会被认为是转义字符,只能匹配到‘1t2’这样的字符串
那要怎样匹配呢,两个方案
1.手动把制表符打出来
cat 1 | grep '1 2'
制表符的打法是ctrl-v + tab
2.使用$符号展开\t
cat 1 | grep '1'$'\t''2'
$符号在shell中是引用变量的意思,所以$‘\t’就是返回了一个展开的制表符
如果要匹配多个制表符,使用+号匹配即可
cat 1 | grep '3'$'\t''\+4'