答え1
これは次のとおりです「(バージョン)番号の自然な順序」ls -v
(GNU)のようにsort -V
。ここでの結果は少し奇妙に見えますが、ポイントは1.1
< 1.2
< <1.11
並べ替えることです1.12
。つまり、各数値シーケンスを次のように考えます。数字単一文字ではなく、自然に先行するゼロが重要ではないことを意味します。
$ touch '00 - A' '000 - B' '0 - C'
$ /bin/ls -v1
00 - A
000 - B
0 - C
これが欠落している場合、ロケールもソートに影響します。
$ LC_ALL=C /bin/ls -1
0 - C
00 - A
000 - B
$ LC_ALL=en_US.UTF-8 /bin/ls -1
000 - B
00 - A
0 - C
使用しているプログラムにソート方法を変更できる文書または設定があることを確認する必要があります。