这个egrep命令有什么作用?

这个egrep命令有什么作用?

这个egrep命令有什么作用?

egrep '[^A-M][0-9]+' /etc/passwd

到目前为止,我认为它会搜索/etc/passwd以 AM 开头并包含数字 0-9 的任何文件。是对的吗?

答案1

^在表达式的开头表示“行的开头”。但是,^括号内的表达式匹配所有内容不是在那表情中。因此,例如,当[abcd]匹配字母 a、b、c 或 d 时,表达式[^abcd]会匹配除这些字母之外的所有内容。

因此,您得到的表达式匹配“任何非 AM 的内容,后跟 1 个或多个数字”。

以下几行都与该表达式匹配:

mmmmmz09123
00
this is a very long line that includes the number 1.

因为它们都包含一个数字,前面的数字不在 AM 范围内。

相关内容