Menurut halaman manual untuk ls, ls -U
berarti:
jangan menyortir; daftar entri dalam urutan direktori.
Apa arti "urutan direktori", dan bagaimana hal itu ditentukan?
Tes berikut (dijalankan pada sistem file ext3), menunjukkan bahwa itu bukan urutan pembuatan file:
root@sv1010vm0007:/tmp# mkdir test
root@sv1010vm0007:/tmp# touch test/2
root@sv1010vm0007:/tmp# touch test/1
root@sv1010vm0007:/tmp# touch test/3
root@sv1010vm0007:/tmp# ls -U test
2 3 1
sumber
Memang, tidak ada urutan khusus untuk diharapkan. Terserah OS dan implementasi sistem file untuk memesan entri seperti yang diinginkan. Salah satu tujuan dari opsi ini adalah untuk mendapatkan daftar yang lebih cepat yang mungkin menjadi faktor signifikan dengan direktori yang sangat besar.
sumber
Ini adalah urutan entri disimpan secara internal di sistem file. Ini akan bervariasi dari sistem file ke sistem file. Misalnya, entires dapat disimpan di beberapa jenis pohon seimbang, seperti Red-Black Tree . Mungkin ada optimasi lebih lanjut untuk direktori dengan sejumlah kecil entri, atau untuk menangani penambahan dan pemindahan secara efisien.
sumber
Direktori hanyalah file lain, yang berisi daftar metadata file aktual. "ls -U" hanya mencantumkan entires dalam urutan yang sama dalam file direktori.
Urutan ditentukan oleh OS dan implementasi sistem file.
sumber