Saya mendapatkan output dari du -h
seperti berikut:
103M ./.wine/drive_c/windows/mono/mono-2.0/lib/mono
103M ./.wine/drive_c/windows/mono/mono-2.0/lib
129M ./.wine/drive_c/windows/mono/mono-2.0
129M ./.wine/drive_c/windows/mono
362M ./.wine/drive_c/windows
545M ./.wine/drive_c
Saya hanya ingin menunjukkan folder yang paling bisa ditindaklanjuti, yaitu folder ./.wine/drive_c/windows/mono/mono-2.0/lib/mono
Apakah ada cara menghapus folder induk jika folder anak bertanggung jawab atas sebagian besar penggunaan ruang disk?
Pengaturan untuk hanya menampilkan folder daun mungkin melakukan trik, atau pengaturan untuk mengurangi ukuran semua subfolder dari folder induk saat menghitung ukuran folder induk.
disk-usage
Eoghan
sumber
sumber
Jawaban:
Jika Anda menggunakan GNU du, Anda dapat menggunakan opsi
-S
atau--separate-dirs
untuk tidak menyertakan ukuran subdirektori saat menghitung penggunaan untuk induk.du
Perintah Anda mungkin tidak mendukung opsi ini.Anda dapat menggunakan pasangan ini dengan sortir untuk mendapatkan direktori individual terbesar (dengan asumsi alat GNU):
sumber
Secara pribadi, saya hanya menggabungkannya dengan kekuatan GNU sort:
Ini akan menyebabkan ukuran diurutkan dalam format yang dapat dibaca manusia. Sebagai contoh:
Dari
man sort
:Itu masih menunjukkan yang tidak Anda pedulikan, tetapi sekarang sangat mudah untuk menemukan yang Anda lakukan.
sumber
545M ./.wine/drive_c
di bagian atas daftar, meskipun itu hanya berisi folder dan tidak ada file, dan membuatnya lebih sulit untuk melihat bagaimana ruang didistribusikan di antara subfolder (rekursif) drive_c karena mereka tidak akan muncul berurutan dalam daftar.Jika Anda hanya mencari tampilan yang diatur dengan jelas, saya sarankan
durep
paket.Contoh output:
Gunakan
-td
parameter untuk menentukan kedalaman maksimum, dan-hs
parameter untuk menentukan ukuran minimum untuk folder muncul di hasil.sumber
Tidak benar-benar yakin apakah ini adalah apa yang Anda inginkan, tetapi Anda dapat strip direktori induk menggunakan GNU
find
's-execdir
:The
-execdir
pilihan adalah mirip dengan-exec
tetapi mengeksekusi perintah Anda pasokan di subdirektori di manafind
telah menemukan file.sumber
Jika Anda menggunakan
du
kedalaman tetap, misalnyadu -m -d 2 .
, Anda bisa saja menutupi garis yang tidak mencapai kedalaman maksimal seperti:Dalam hal ini, saya menginginkan kedalaman 2 direktori jadi saya hanya menyimpan hasilnya dengan 3 bidang seperti yang didefinisikan dengan
awk
kata kunciNF
setelah menentukan"/"
sebagai pemisah bidang saya di awal.sumber
Keduanya bekerja untuk saya:
sumber