Saya mencari program untuk menunjukkan kepada saya file / direktori mana yang paling banyak menempati ruang, seperti:
74% music
\- 60% music1
\- 14% music2
12% code
13% other
Saya tahu itu mungkin di KDE3, tapi saya lebih suka tidak melakukannya - KDE4 atau baris perintah lebih disukai.
linux
disk-space
Robert Munteanu
sumber
sumber
Jawaban:
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 keduaxargs -I{}
menggunakan baris bukan ruang untuk mengakhiri item masukan.contoh:
sumber
find . -type f -print0 | xargs -0 du | sort -nr | head -10 | cut -f2 | xargs -I{} du -sh {}
(yaitu, gunakansort -nr | head -10
bukansort -n | tail -10
)Saya selalu menggunakan
ncdu
. Ini interaktif dan sangat cepat.sumber
ncdu
--- itu sepertihtop
untuk ruang disk. Sangat berguna![t] [g] [g]
.Untuk tampilan cepat:
daftar semua direktori dengan yang terbesar terakhir.
atau, sekali lagi, menghindari * yang berlebihan:
daftar semua direktori dalam direktori saat ini dengan yang terbesar terakhir.
(-n parameter untuk mengurutkan diperlukan sehingga bidang pertama diurutkan sebagai angka daripada sebagai teks tetapi ini menghalangi menggunakan parameter -h untuk du karena kita membutuhkan angka signifikan untuk pengurutan)
Parameter lain untuk du tersedia jika Anda ingin mengikuti tautan simbolik (defaultnya adalah tidak mengikuti tautan simbolik) atau hanya menunjukkan ukuran isi direktori tidak termasuk subdirektori, misalnya. du bahkan dapat memasukkan dalam daftar tanggal dan waktu ketika file dalam direktori terakhir kali diubah.
sumber
find {/path/to/directory} -type f -size +{file-size-in-kb}k -exec ls -lh {} \; | awk '{ print $8 ": " $5 }'
du -h --max-depth=1 2>/dev/null | sort -nr | grep -v ^0
- Agak lebih rapiUntuk sebagian besar hal, saya lebih suka alat CLI, tetapi untuk penggunaan drive, saya sangat suka filelight . Presentasi ini lebih intuitif bagi saya daripada alat manajemen ruang lainnya yang pernah saya lihat.
sumber
Filelight lebih baik untuk pengguna KDE, tetapi untuk kelengkapan (judul pertanyaan umum) saya harus menyebutkan Baobab termasuk dalam Ubuntu, alias Disk Usage Analyzer:
sumber
Alat GUI, KDirStat , menampilkan data dalam bentuk tabel dan grafik. Anda dapat melihat dengan sangat cepat di mana sebagian besar ruang digunakan.
Saya tidak yakin apakah ini persis alat KDE yang tidak Anda inginkan, tapi saya pikir itu masih harus disebutkan dalam pertanyaan seperti ini. Itu bagus dan banyak orang mungkin tidak mengetahuinya - saya sendiri baru mempelajarinya.
sumber
ncdu
sebagai gantinya.Kombinasi selalu merupakan trik terbaik di Unix.
Akan menampilkan ukuran direktori dalam KB dan mengurutkan untuk memberikan yang terbesar di akhir.
Namun, Tree-view membutuhkan lebih banyak fu ... apakah ini benar-benar diperlukan?
Perhatikan bahwa pemindaian ini bersarang di seluruh direktori sehingga akan menghitung sub-direktori lagi untuk direktori yang lebih tinggi dan direktori dasar
.
akan muncul di bagian akhir sebagai jumlah utilisasi total.Namun Anda dapat menggunakan kontrol kedalaman pada pencarian untuk mencari pada kedalaman tertentu.
Dan, lebih banyak terlibat dengan pemindaian Anda sebenarnya ... tergantung pada apa yang Anda inginkan. Kontrol kedalaman
find
dengan-maxdepth
dan-mindepth
dapat membatasi kedalaman direktori tertentu.Berikut adalah variasi yang disempurnakan untuk masalah arg terlalu lama Anda
sumber
Saya suka GT5 . Anda dapat menavigasi pohon dan membuka subdirektori untuk menelusuri lebih detail. Ini menggunakan browser web mode teks, seperti lynx, untuk menampilkan hasilnya. Instal elinks untuk hasil terbaik.
sumber
Meskipun tidak memberi Anda output bersarang seperti itu, cobalah
du
Menjalankannya di folder Documents saya memuntahkan yang berikut:
Kemudian Anda dapat mengurutkan output dengan menyalurkannya ke
sort
sumber
Ini adalah skrip yang melakukannya untuk Anda secara otomatis.
http://www.thegeekscope.com/linux-script-to-find-largest-files/
Berikut ini adalah contoh hasil skrip:
Anda mungkin menemukan skrip ini sangat berguna dan bermanfaat!
sumber
Meskipun menemukan persentase penggunaan disk dari setiap file / direktori bermanfaat, sebagian besar waktu mengetahui file / direktori terbesar di dalam disk sudah cukup.
Jadi favorit saya adalah ini:
Dan outputnya seperti ini:
sumber
Untuk menemukan 25 file teratas di direktori saat ini dan subdirektori:
find . -type f -exec ls -al {} \; | sort -nr -k5 | head -n 25
Akan menampilkan 25 file teratas dengan mengurutkan berdasarkan ukuran file melalui perintah pipa "sort -nr -k5".
sumber
Alternatif lain adalah agedu yang memecah ruang disk oleh waktu akses terakhir, yang membuatnya lebih mudah untuk menemukan ruang membuang file.
Ia bahkan bekerja pada server tanpa X Windows dengan menyajikan halaman web sementara sehingga penggunaannya dapat dianalisis dari jarak jauh, dengan grafik. Dengan asumsi alamat IP server adalah 192.168.1.101, Anda dapat mengetik ini pada baris perintah server
Ini mencetak nama pengguna, kata sandi, dan URL yang dengannya Anda dapat mengakses "GUI" dan menelusuri hasilnya. Setelah selesai, akhiri
agedu
denganCtrl+D
di server.sumber
Akan menampilkan daftar direktori root.
sumber
Untuk melengkapi daftar sedikit lagi, saya menambahkan analisa penggunaan disk favorit saya, yaitu
xdiskusage
.GUI mengingat saya tentang beberapa utilitas X lain yang baik, cepat dan tidak membengkak, tetapi Anda dapat menavigasi dengan mudah dalam hierarki dan memiliki beberapa opsi tampilan:
sumber
Coba satu-liner berikut (menampilkan top-20 file terbesar di direktori saat ini):
atau dengan ukuran yang dapat dibaca manusia:
Jadi alias-alias ini berguna untuk ada dalam file rc Anda (setiap kali Anda membutuhkannya):
sumber