GNU/Linux >> Linux の 問題 >  >> Linux

Linuxでファイルの物理サイズを取得するには?

ls -l ファイルの見かけのサイズが表示されます。これは、プログラムがファイルを最初から最後まで読み取った場合に読み取るバイト数です。 du 「ディスク上」のファイルのサイズがわかります。

デフォルトでは、du ファイルのサイズをディスク ブロックの数で示しますが、 -h を使用することもできます 代わりに人間が読める単位を取得します。 du のマニュアルも参照してください

GNU coreutil の du では、 (これはおそらく Linux にあるものです)、-b バイトを取得するには --apparent-size を意味します オプション。これは、ディスクで実際に使用されているバイト数を取得するために使用するものではありません。代わりに --block-size=1 を使用してください または -B 1 .

GNU ls を使用 、 ls -s --block-size=1 を行うこともできます ファイルに。これは du -B 1 と同じ数になります

例:

$ ls -l file
-rw-r--r--  1 myself wheel  536870912 Apr  8 11:44 file

$ ls -lh file
-rw-r--r--  1 myself wheel   512M Apr  8 11:44 file

$ du -h file
24K    file

$ du -B 1 file
24576   file

$ ls -s --block-size=1 file
24576 file

これは、これがディスク上で約 24 KB を占める 512 MB のファイルであることを意味します。 スパースです ファイル (ほとんどの場合、実際にはディスクに書き込まれるのではなく、ファイル内の論理的な「穴」として表されるゼロ)。スパース ファイルは、事前に割り当てられた大きなファイルを操作する場合によく使用されます。仮想マシンやスワップ ファイルなどのディスク イメージ。スパース ファイルの作成は高速ですが、ゼロで埋めるのは時間がかかります (そして不要です)。

fallocate のマニュアルも参照してください Linux システムで。


次のようにファイル サイズをバイト単位で取得します:

actualsize=$(du -b "${file}" | cut -f 1)

Linux
  1. Linuxでディレクトリサイズを取得する方法

  2. Linuxで特定のサイズのファイルを作成するには?

  3. Pythonで(MB)ファイルのtar.gzのサイズを取得する方法

  1. LinuxでTarコマンドを使用する方法

  2. Linux –前日にSarを表示するにはどうすればよいですか?

  3. CからLinuxで現在のファイル(pwd)へのパスを取得する方法は?

  1. Linuxでディレクトリのサイズを取得する方法

  2. UbuntuLinuxでスワップサイズを増やす方法

  3. Linux で物理ディスクの数を取得するには?