du
- biasa digunakan untuk mencari ukuran sebuah direktori, walau sebenarnya du adalah perintah untuk mencari ukuran pada sebuah file, dan untuk mendapat ukuran direktori di lakukan secara rekursif pada seluruh file di direktori tersebut, lalu diberikan total dari akumulasi ukuran tiap file.
Penggunaannya sebagai berikut:
du [OPTION]... [FILE]...
dimana
OPTION
akan memudahkan kita dalam pencarian informasi, sedangkan
FILE
diisi dengan file yang inginkan, dapat digunakan lebih dari satu file.
$ du foo.txt bar.txt
10 foo.txt
20 bar.txt
Ini bentuk sederhana yang hanya mengeluarkan ukuran tanpa postfix seperti
K
,
M
, atau
G
. Untuk mendapatkan postfix tersebut digunakan opsi:
$ du -h foo.txt
10K foo.txt
-h
,
--human-readable
berarti formatnya dipermudah dengan menambahkan postfix.
$ du foobar/
34 foobar
Direktori foobar berisi file
foo.txt
dan
bar.txt
, nilai 34 di ambil dari akumulasi
foo.txt
,
bar.txt
dan direktori
foobar/
(direktori mempunyai ukurannya sendiri yaitu 4 KB)
$ du -a foobar/
10 foobar/foo.txt
20 foobar/bar.txt
34 foobar/
-a
,
-all
digunakan agar format output dari du juga menyisipkan ukuran tiap file, karena tanpa opsi
-a
hanya menampilkan ukuran tiap direktori serta sub-direktori saja.
$ du -sh foobar/
34K foobar
-s
,
--summarize
hanya menampilkan total keseluruhan direktori beserta file-nya tambahkan opsi
-h
untuk mendapatkan format yang mudah dibaca.
Jika menjalankan perintah du tanpa file input, maka dia akan memeriksa pada direktori yang sedang aktif saja.
Selain opsi-opsi diatas, terdapat opsi lain, seperti:
-S
,
--seperate-dirs
ukuran sub-direktori tidak akan di ikutkan dalam akumulasi, jadi jika didalam
foobar/
ada direktori
barfoo/
dengan ukuran 4K, dan dengan opsi
-S
maka hasilnya akan tetap 34K.
--exclude=PATTERN
opsi ini akan menyingkarkan file yang mempunyai bentuk sesuai dengan
PATTERN
, dan ini bukan
regular expression, hanya shell pattern yang sederhana seperti tanda
?
akan mencocokan pada satu karakter saja dan tanda
*
akan mencocokan pada string apapun, contoh;
Jika direktori
foobar/
mempunyai file
header.c
dan
main.c
, lalu:
$ du -a --exclude="*.c" foobar/
10 foobar/foo.txt
20 foobar/bar.txt
34 foobar/
Maka yang tampak hanyalah
foo.txt
,
bar.txt
, dan
foobar/
, file
header.c
dan
main.c
dihilangkan karena mereka termasuk dalam
PATTERN
.