为什么Linux使用正则grep [a-z] /etc/passwd -n会把带t的行给显示出来?
高洛峰
高洛峰 2016-11-07 10:54:23
0
1
778

echo $LANG

en_US.UTF-8

uname -r

4.7.7-200.fc24.x86_64

grep [a-z] /etc/passwd -n

4153318316-581dfe86654b6_articlex.jpg

高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

Antworte allen(1)
三叔

因为[a-z]是一个pattern,它会匹配当前目录下所有只有一个字母的档案。
如果你的当前目录只有 t 这个档案,[a-z] 会返回 t 。
如果[a-z]没有匹配成功[a-z] 会是 [a-z]。

你可以加双引号防止shell做globbing。

grep "[a-z]" /etc/passwd -n


Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage