Meneruskan -s
ke du
akan membatasi keluaran hanya untuk item yang ditentukan pada baris perintah.
du -sh ~
Du hanya akan menampilkan total per folder, bukan per pengguna.
Itu mungkin berhasil jika Anda menginginkan ukuran total, katakanlah, /home/example_user/
dan jika hanya example_user yang memiliki file di folder itu. Jika pengguna lain memiliki file di dalamnya maka ini tidak akan menghasilkan ukuran semua file yang Anda miliki, tetapi ukuran total semua file di folder itu.
Untuk mendapatkan informasi per pengguna, baik:
- Jika Anda mengaktifkan kuota, gunakan perintah tersebut.
- Gunakan find untuk menjelajahi semua direktori tempat Anda ingin menghitung file. Gunakan uid untuk hanya memilih file Anda dan menyimpan larik asosiatif di awk untuk menghitung totalnya.
find /path/to/search/ -user username_whos_files_to_count -type f -printf "%s\n" | awk '{t+=$1}END{print t}'
- Perintah pertama mencari melewati semua file dan direktori di
/path/to/search/
. -type f
pastikan Anda hanya memilih file, jika tidak, Anda juga menghitung ukuran direktori. (Coba buat folder kosong. Mungkin akan menggunakan ruang disk 4k).-user username_whos_files_to_count
hanya memilih hasil dari satu pengguna-printf "%s\n"
akan mencetak ukuran.
Jika Anda baru menjalankan bagian pertama ini, Anda akan mendapatkan daftar angka. Itu adalah ukuran file. (Semua yang lain dilucuti, hanya ukurannya yang dicetak berkat perintah cetak %s.)
Kami kemudian dapat menambahkan semua angka itu untuk mendapatkan ringkasan. Dalam contoh, ini dilakukan dengan awk.
Untuk menemukan semua penggunaan oleh pengguna tertentu, perintah yang baik adalah:
find -user $USER -type f -exec du -chs {} +
Anda dapat memodifikasi lebih lanjut tergantung pada kebutuhan tertentu, misalnya saya sering ingin meringkas penggunaan berdasarkan folder, dan berikut ini berfungsi dengan baik:
find . -maxdepth 1 -user $USER -type d ! -path . -exec du -chs {} +
Ini hanya menemukan direktori pada satu tingkat, dibatasi oleh pengguna, mengecualikan direktori induk, dan mencetak setiap direktori dan ringkasan di bagian akhir.