for
ディレクトリにファイルを一覧表示するときのソートに関して、ループのデフォルトの動作は何ですか?
例えば
for sqlfile in *.sql; do mysql -u root -p pass < sqlfile; done
これはどこかに文書化されていますか?
ベストアンサー1
man bash
「パス名拡張」セクションによると:
これらの文字のいずれかが発生すると、その単語はパターンと見なされ、次に置き換えられます。アルファベット順に並べ替えパターンに一致するファイル名のリスト [...]
この順序は次の値によって異なります$LC_COLLATE
。
この変数は、パス名拡張の結果をソートするときに使用される照合順序を決定します。 [...]
上記のように、これはループとは何の関係もありませんfor
。 Globsはさまざまな方法で使用でき、拡張は常に順番に行われます。