GNU/Linux >> Belajar Linux >  >> Linux

Bagaimana cara mendapatkan ukuran fisik file di Linux?

ls -l akan memberi Anda ukuran file yang jelas, yang merupakan jumlah byte yang akan dibaca oleh program jika membaca file dari awal hingga selesai. du akan memberi Anda ukuran file "on disk".

Secara default, du memberi Anda ukuran file dalam jumlah blok disk, tetapi Anda dapat menggunakan -h untuk mendapatkan unit yang dapat dibaca manusia sebagai gantinya. Lihat juga manual untuk du di sistem Anda.

Perhatikan bahwa dengan du GNU coreutil (yang mungkin Anda miliki di Linux), -b untuk mendapatkan byte menyiratkan --apparent-size pilihan. Ini bukan yang ingin Anda gunakan untuk mendapatkan jumlah byte yang sebenarnya digunakan pada disk. Sebagai gantinya, gunakan --block-size=1 atau -B 1 .

Dengan GNU ls , Anda juga dapat melakukan ls -s --block-size=1 pada file. Ini akan memberikan nomor yang sama dengan du -B 1 untuk file.

Contoh:

$ 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

Artinya, ini adalah file 512 MB yang membutuhkan sekitar 24 KB pada disk. Ini adalah jarang file (kebanyakan nol yang sebenarnya tidak ditulis ke disk tetapi direpresentasikan sebagai "lubang" logis dalam file). File jarang biasa terjadi saat bekerja dengan file besar yang telah dialokasikan sebelumnya, mis. gambar disk untuk mesin virtual atau menukar file, dll. Membuat file renggang itu cepat, sedangkan mengisinya dengan nol itu lambat (dan tidak perlu).

Lihat juga manual untuk fallocate di sistem Linux Anda.


Saya mendapatkan ukuran file dalam byte seperti ini:

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

Linux
  1. Linux – Bagaimana Cara Menampilkan Sar Untuk Hari Sebelumnya?

  2. Cara mendapatkan ukuran direktori di Linux

  3. Bagaimana cara membuat file dengan ukuran tertentu di Linux?

  1. Cara Menggunakan Perintah Tar di Linux

  2. Cara mendapatkan ukuran file tar.gz dalam (MB) dengan python

  3. Bagaimana cara mendapatkan path ke file saat ini (pwd) di Linux dari C?

  1. Cara Mendapatkan Ukuran Direktori di Linux

  2. Cara Meningkatkan Ukuran Swap di Ubuntu Linux

  3. Bagaimana cara mendapatkan jumlah disk fisik di Linux?