ディレクトリ内にファイルがあっても、ls -l total が 0 になるのはなぜですか?

ディレクトリ内にファイルがあっても、ls -l total が 0 になるのはなぜですか?

ディレクトリがあり、その中に 2 つのファイルを作成し、 を実行するときにこれらのファイルにいくつかのコンテンツを書き込みましたls -l。それでも合計は と表示されます0。なぜでしょうか? 何らかの正の整数を返す必要があります。

すでに言及したこれ答えは分かりましたし、説明にも納得しました。でも、なぜ合計が 0 なのか、まだ理解できませんでした。

私は、Windows 10 上の Windows Subsystem for Linux を使用して、Ubuntu (20.04 LTS) でこのコマンドを実行しています。

ls出力

答え1

おそらく、NTFS ボリュームで WSL を使用しているからでしょう。NTFS は、小さなファイルを MFT (マスター ファイル テーブル) 内のファイル レコードに直接保存します。大きなファイルの場合、ファイル レコード内のこのスペースは予約されますが、使用されません。したがって、小さなファイルは、ファイル レコードがいずれにしても占有するスペースを除いて、基本的にディスク上の余分なスペースを占有せず、合計は 0 になります。

答え2

「ls」コマンドの出力の「total」とは何ですか? [重複]

合計はディレクトリ内のアイテム数ではなく、ディスク使用量を表示します。

「合計」は、リストされたファイルのディスク使用量(-a により . および .. エントリが含まれるため)をブロック単位で表したもの(1024 バイト、または POSIXLY_CORRECT が設定されている場合は 512 バイト)であり、サブディレクトリの内容は含まれません。

関連情報