使用grep搜索文件内容,以获取行开头的特定字符数

Kam*_*Ali -1 linux shell

我在文件中有以下数据

Muhammad,Ali    House 12 Mazhar Colony Rawalpindi   0333-5438855
Bushra,Qadir    Gulberg Society Lahore  0234-5321998
Muhammad,Imtiaz Sector E-11/4 Islamabad 0331-4320988
Ehtasham Ul,Haq Chinar House Islamabad  0432-2294712
Summaya,Mumtaz  NUST Hostel-3 Islamabad 0321-7659832
Junaid,Riaz Sadar Road Rawalpindi   0331-5332222
Run Code Online (Sandbox Code Playgroud)

我需要搜索姓氏正好为5个字符的行,并且名字长度为3或4个字符grep.我尝试了很多不同的代码,但运气不利于我.有什么想法吗?

gra*_*uet 6

你可以尝试以下方面:

grep -E '^\w{5},\w{3,4}\s'
Run Code Online (Sandbox Code Playgroud)

文件内容:

Muhammad,Ali    House 12 Mazhar Colony Rawalpindi   0333-5438855  
Bushr,Qadi    Gulberg Society Lahore  0234-5321998
Muham,Imt Sector E-11/4 Islamabad 0331-4320988
Ehtasham Ul,Haq Chinar House Islamabad  0432-2294712
Summaya,Mumtaz  NUST Hostel-3 Islamabad 0321-7659832
Junaid,Riaz Sadar Road Rawalpindi   0331-5332222
Run Code Online (Sandbox Code Playgroud)

输出:

Bushr,Qadi    Gulberg Society Lahore  0234-5321998
Muham,Imt Sector E-11/4 Islamabad 0331-4320988
Run Code Online (Sandbox Code Playgroud)