サイズディスク使用量単位サフィックス(duユーティリティ)

サイズディスク使用量単位サフィックス(duユーティリティ)

Eはどの単位を表しますかdu?たとえば、

16E 

それを使用するとき:

du -h 

*追伸。 K(キログラム)とM(メガバイト)があります。これは元になれない!

ここに画像の説明を入力してください。

ベストアンサー1

16Eは16エクサバイト、より正確には16エクサバイトを意味します。 エクサバイト(16 EiB)、つまり16・1024 6バイトです。これは2 64バイトです。 2 64 -1(表示された値の3桁以内)は、「デフォルト」変数が64ビットシステムで表すことができる最大値です。

多くのプログラムはデフォルト変数を使用して、0と2 64 -1(符号なし整数)の間、または-2 63と2 63 -1(符号付き整数)の間の整数を格納します。メモリの符号付き整数表現 -X符号なし整数 2 64 の表現と同じ -X。 32ビットシステムの場合、間隔はそれぞれ0〜2 32 -1(4GiB)および-2 31〜2 31 -1です。

Screenshotsディレクトリに約3.3GiBが含まれていると言われました。これは、最大の符号付き32ビット値よりも大きいが、最大の符号なし32ビット値よりも小さいです。ここで発生する現象は、システムの一部がサイズを32ビット変数に格納してから値を64ビットに変換しますが、値を符号なし値ではなく符号付き値として解釈することです。したがって、約-0.7GiB(範囲-2GiB〜2GiB)の値は-0.7GiB(範囲-16EiB〜16EiB)に変換されます。 16 EiB - 0.7 GiBは16 EiBです(正確には小数点9桁まで)。

これは、32ビット値を使用するシステム部分のバグです。そのディレクトリに4.1GiBを配置すると、合計サイズは約0.1GiBになります。同じ理由で異なるエラーが発生します。実行中のオペレーティングシステムのバグトラッカーを確認し、バグが見つからない場合は報告してください。

おすすめ記事