Saya ingin daftar folder dari direktori saat ini atau yang saya tentukan dengan ukurannya.
Saya telah mencoba dengan du tetapi saya hanya mendapatkan ukuran direktori yang saya tentukan (du ./f1), dan ls tidak menunjukkan ukuran folder.
Bagaimana saya melakukan ini tanpa skrip?
command-line
unix
terminal
kevin
sumber
sumber
Jawaban:
Jika Anda ingin menampilkan semua direktori di direktori saat ini:
Untuk menunjukkan kepada mereka mulai dari direktori lain:
Jika Anda ingin memastikan direktori dengan nama yang dimulai dengan titik dimasukkan, lakukan
shopt -s dotglob
terlebih dahulu.sumber
du -s */ | sort -n
.shopt -s dotglob
docPada Mac, opsi --max-depth digantikan oleh -d [depth]. Jadi, untuk melihat daftar yang dapat dibaca manusia dari drive root Anda ditambah 2 level, gunakan yang berikut ini:
Catatan: perintah ini akan mengekspos dua tingkat direktori teratas dari root Anda. Ini termasuk melintasi satu tingkat ke dalam Volume Anda , dan akan mencantumkan ukuran ringkasan dari setiap direktori tingkat atas di setiap volume terlampir Anda. Bergantung pada apa yang Anda lampirkan, perintah ini bisa memakan waktu untuk diselesaikan.
sumber
Pendekatan lain adalah opsi --max-depth.
Akan mencantumkan semua direktori dan file di bawah folder saat ini dengan ukuran.
Kedalaman 2 akan membuat daftar satu tingkat folder lagi.
sumber
du -hd 2 .
untuk 2 level kedalaman.Mencoba:
atau
untuk ukuran lebih mudah dibaca yang ramah.
sumber
$ du --max-depth=1 /var/www/ | sort -n -r
sumber
Layak untuk menyebutkan perintah shell Penggunaan NCurses Disk .
sumber
Membangun berdasarkan jawaban yang diterima, perintah ini akan menunjukkan kepada Anda ukuran folder di direktori, dan juga akan mencantumkannya berdasarkan ukuran agar Anda dapat mengartikannya dengan lebih mudah:
sumber
Di Mac, Anda dapat menginstal implementasi GNU (Linux)
du
dengan Homebrew (brew install coreutils
). Lalu misalnya:dimana
gdu
adalah nama yang diberikan untuk implementasi GNUdu
(secara default Homebrew tidak menyembunyikan/usr/bin/du
);s
menghasilkan total besar untuk folder yang ditentukan (hilangkan jika Anda ingin melihat rinciannya);h
menampilkan ukuran yang bisa dibaca manusia;L
mengikuti symlinks;--exclude=.git
mengecualikan direktori git dalam folder yang ditentukan (ini hanyalah sebuah contoh).Anda dapat mengabaikan lebih banyak folder dengan menambahkan
--exclude=blah
. Anda juga dapat menentukan beberapa folder sekaligus (yaitugdu folder1 folder2 ...
), dan dalam hal ini, Anda dapat menggabungkan semua subtotal menjadi satu ukuran menggunakan opsic
.sumber
Berikut ini skrip POSIX yang akan bekerja dengan:
Sumber
sumber