使用 grep 搜索空格和数字模式

使用 grep 搜索空格和数字模式

我想在目录中的所有文件中找到该模式

t00 = 290
or
t00     = 300
or
t00 =    -278
...

换句话说:(字符串“t00”)+(1个或多个空格)+(符号“=”)+(1个或多个空格)+(可能是负号)+(数字)

我努力了

grep -E "t00 += +-?\d" *

但它没有按预期工作。只是尝试我做了

grep -P "t00 += +-?\d" *

它适用于 Perl 表达式。在扩展正则表达式的情况下我做错了什么?我想使用扩展正则表达式而不是 Perl,因为我听说它更常见/通用(不过,我可能是错的)。谢谢。

答案1

问题是该\d语句不属于扩展正则表达式标准。您可以尝试使用[[:digit:]]POSIX 字符类(或[0-9]在不理解这些字符类的实现上)。

相关内容