grep查找包含"\ t"的行

bru*_*ais 5 grep

我被要求制作一个shell脚本来检查文件中的简单错误.我想找到,对于每一行如果

(正则表达式:)"[]\t"永远发生.

问题是grep忽略了\并且将"t"作为文字.我也尝试将字符本身写入文件并要求grep读取它但它不起作用.有没有办法在使用任何常用的linux工具(如grep)的文件中找到正则表达式"\ t"?

我已经尝试过:

grep -E --ignore-case --line-number --with-filename --file="b" file
Run Code Online (Sandbox Code Playgroud)

(b包含:"")并且还:

grep -E --ignore-case --line-number --with-filename --regexp=" [\t]" file
Run Code Online (Sandbox Code Playgroud)

kev*_*kev 12

您可以使用C风格的字符串 $'...'

grep $'\t' file.txt
Run Code Online (Sandbox Code Playgroud)

或者sed:

sed -n '/\t/p' file.txt
Run Code Online (Sandbox Code Playgroud)


ДМИ*_*КОВ 5

您可以将 perl regex 与--perl-regex类似的选项一起使用

 grep --perl-regex "\t"
Run Code Online (Sandbox Code Playgroud)