grep [A-Za-z]的一个方法

时间:2021-06-27 21:20:28
文件f2
yy23i3
 0       9Thi.s   is.ttx xyttt 你好ttx  the second line
8yy xu89t 
4512z1

grep -n [A-Za-z][A-Za-z]*  f2 后,没有结果。这是怎么回事?

grep -n ^[A-Za-z][A-Za-z]*  f2 后的,结果为:
1:yy23i3

为什么前者没有执行结果,后者有呢?

3 个解决方案

#1


我猜可能是*的原因,shell会默认把*当做通配符吧。
grep -n ‘[A-Za-z][A-Za-z]*’ f2
就可以了.

#2


grep -n "^[A-Za-z][A-Za-z]*"  f2
正则匹配的字符串用双引号引用,表示引号内的是要搜索的字符串,以免*对文件名进行通配,和避免单引号对正则语义的扩展

#1


我猜可能是*的原因,shell会默认把*当做通配符吧。
grep -n ‘[A-Za-z][A-Za-z]*’ f2
就可以了.

#2


grep -n "^[A-Za-z][A-Za-z]*"  f2
正则匹配的字符串用双引号引用,表示引号内的是要搜索的字符串,以免*对文件名进行通配,和避免单引号对正则语义的扩展