Untuk menemukan 10 file terbesar (linux / bash):
find . -type f -print0 | xargs -0 du | sort -n | tail -10 | cut -f2 | xargs -I{} du -sh {}
Untuk menemukan 10 direktori terbesar:
find . -type d -print0 | xargs -0 du | sort -n | tail -10 | cut -f2 | xargs -I{} du -sh {}
Hanya perbedaannya -type {d:f}
.
Menangani file dengan spasi dalam nama, dan menghasilkan ukuran file yang dapat dibaca manusia di output. File terbesar terdaftar terakhir. Argumen untuk mengekor adalah jumlah hasil yang Anda lihat (di sini 10 terbesar).
Ada dua teknik yang digunakan untuk menangani spasi dalam nama file. The find -print0 | xargs -0
penggunaan nol pembatas bukannya ruang, dan yang kedua xargs -I{}
menggunakan baris bukan ruang untuk mengakhiri item masukan.
contoh:
$ find . -type f -print0 | xargs -0 du | sort -n | tail -10 | cut -f2 | xargs -I{} du -sh {}
76M ./snapshots/projects/weekly.1/onthisday/onthisday.tar.gz
76M ./snapshots/projects/weekly.2/onthisday/onthisday.tar.gz
76M ./snapshots/projects/weekly.3/onthisday/onthisday.tar.gz
76M ./tmp/projects/onthisday/onthisday.tar.gz
114M ./Dropbox/snapshots/weekly.tgz
114M ./Dropbox/snapshots/daily.tgz
114M ./Dropbox/snapshots/monthly.tgz
117M ./Calibre Library/Robert Martin/cc.mobi
159M ./.local/share/Trash/files/funky chicken.mpg
346M ./Downloads/The Walking Dead S02E02 ... (dutch subs nl).avi