搜尋

首頁  >  問答  >  主體

为什么Linux使用正则grep [a-z] /etc/passwd -n会把带t的行给显示出来?

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

高洛峰高洛峰2947 天前763

全部回覆(1)我來回復

  • 三叔

    三叔2016-11-07 10:54:49

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

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

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


    回覆
    0
  • 取消回覆