fgrep命令不同于grep和egrep命令,因为它搜索字符串而不是搜索与表达式匹配的模式。
有人可以用一个简单的例子来解释使用上的区别吗?
答案 0 :(得分:1)
fgrep
等效于grep -F
,egrep
等效于grep -E
grep -F
匹配字符串,而grep -E
匹配扩展的正则表达式。
给出输入文件:
$ cat file
Hello Alice!
Hello Bob!
Hi Alice!!
Hi Bob!!
模式匹配:
$ grep -E -f <(echo -e "Ali.*\nBob") file
Hello Alice!
Hello Bob!
Hi Alice!!
Hi Bob!!
字符串匹配:
$ grep -F -f <(echo -e "Ali.*\nBob") file
Hello Bob!
Hi Bob!!
在第二个示例中,Ali.*
与Alice
不匹配,因为grep
将其作为乱抛字符串。
我建议看看this page。