grep -e "Pattern" --regexp=Pattern 有什么用?

What is the use of grep -e "Pattern" --regexp=Pattern?

我知道我们什么时候使用

grep -e "hello" -e "helo" 

这将匹配 hellohelo,但我在手册页中看到以下内容:

-e PATTERN, --regexp=PATTERN

regexp是什么意思?

这意味着您可以使用具有相同参数的 -e--regexp 来获得相同的行为。

所以下面是等价的:

grep -e "hello" -e "helo"
grep --regexp='helo' --regexp='hello'

请注意,您可以通过转义 |:

获得与常规 grep 相同的行为
grep "hello\|helo"

或直接使用-E(或--extended-regexp):

grep -E "hello|helo"

Regexp(或 regex)是 Regular Expression 的缩写,表示您可以 grep 查找特定模式,而不仅仅是常规字符串。 例如。如果你想对所有包含数字的行进行 grep,你可以这样做:

grep -e "[0-9]" <file>

在此处阅读更多内容:http://en.wikipedia.org/wiki/Regular_expression