UNIXと互換性があり、順序を区別するファイルシステムはありますか?
たとえば、次の2つのディレクトリ構造は異なります。
a
b
c
そして
a
c
b
答え1
ディレクトリには通常特別な順序はありません。ls -a --sort=none
、および同じコマンドを使用して、どの順序(またはその欠如)があるかを確認できます。find . -maxdepth 1
ext4ファイルシステムを使用するLinuxベースのシステムには、ディレクトリエントリの特別な順序はありません。私のWindowsベースのCygwinシステムは、ディレクトリエントリを英数字の順序で維持するようです。他のファイルシステムが独自の方法でプロジェクトを管理すると思います。
答え2
データがメディアに連続的に書き込まれることがほとんどないため、ファイルシステムには順序感覚がありません。 a、b、cディレクトリを作成する場合、ここで唯一の「順序」は、そのディレクトリが作成された時期のメタデータです。それ以上の順序は、データの再読み込みに使用するツール(またはls -c
代わりに)によって適用されます。ls -r
ls
ディレクトリのinodeを表示するには、を使用できますls -i
。
それ以外の場合は順序が不足しているため、ファイルシステムを使用する理由の1つです。
シーケンシャルベースのファイルシステムが必要な場合は、ファイルシステムをまったく使用しないことをお勧めします。 dd を使用して生データをハードディスクに書き込むことができます。
# echo "helloWorld" | dd of=/dev/sdX
# head -c{1..10} /dev/sdx
helloWorld#
これはプリミティブですが、基本的に独自のルールを使用し、順序が必要な一時ファイルシステムを作成できます。