关于grep的问题

关于grep的问题

我写了一个grep命令,如下:
grep "[^a-z]Pro" abc.txt
在abc.txt文件中查找Pro字符串,其前面不允许有小写英文字母,但是这样查找会把以Pro字符串开头的行过滤掉,如何能够让他包括以Pro字符串开头的行?

谢谢
你要注意:
匹配是逐行进行的;
匹配默认情况下总是追求最大化,即它总是根据最后一次匹配成功时遇到的情况执行特定的动作,大多数是显示操作;
思路:
1. 删除所有包含 Pro 且 Pro 前方紧跟小写字母的行;
2. 从上一步的结果中筛选所有包含 Pro 的行。
看结果:

[root@MagicLinux ~]# cat abc.txt
aPro
zPro
Pro
Proh
sss Pro
HHHdPro
Prosisses
askjha
sajkk
HHHJProhu
jjyuPro
kkiyProdd
Prohu sdjkPro
ProPro
Pro Pro h0Pro HHJpro hhyKPro


[root@MagicLinux ~]# cat abc.txt | grep -v "[a-z]Pro"
Pro
Proh
sss Pro
Prosisses
askjha
sajkk
HHHJProhu
Pro Pro h0Pro HHJpro hhyKPro


[root@MagicLinux ~]# cat abc.txt | grep -v "[a-z]Pro" | grep "Pro"
Pro
Proh
sss Pro
Prosisses
HHHJProhu
Pro Pro h0Pro HHJpro hhyKPro
grep "^[^a-z]*Pro"