3

bash の set コンストラクト ワイルドカード、つまり [] を理解するために、いくつかのファイルをセットアップしました。

ls *
1  2  A  bob  darlene  dave  ed  frank  fred  LS_example.sh  Z

返されると予想したファイルにls [a-z]*は、小文字で始まるファイルのみが含まれますが、次の例では、大文字で始まるファイルも返されます。

ls [a-z]*
A  bob  darlene  dave  ed  frank  fred  LS_example.sh

この振る舞いを説明できますか?

4

1 に答える 1

2

お使いのロケール (および OS での定義方法) では[a-z]、大文字と小文字が含まれます。小文字を確実に一致させたい場合は、次のようにします。

ls [[:lower:]]*
于 2012-06-08T04:18:54.980 に答える