Pertanyaan Bagaimana daftar ukuran file rekursif dari file dan direktori dalam direktori?


Bagaimana cara saya mendaftar semua file dalam direktori dan ukuran file rekursifnya?

--- edit

Saya ingin melihat ukuran 'digulung' ke direktori induk di direktori yang terdaftar. Saya tidak ingin melihat direktori anak atau isinya atau ukurannya.


35
2017-08-18 11:46


asal


Maksud Anda, Anda ingin melihat total ukuran (jumlah) dari semua file dalam folder, seperti mengklik kanan pada folder di desktop Anda dan memilih 'properti'? - Pavlos G.
Apakah Anda mencari perangkat lunak yang membantu Anda menemukan file-file besar, atau sesuatu untuk mendapatkan pohon file (collapsable)? - Lekensteyn
Hai @Pavlos G - Maksud saya jumlah untuk masing-masing direktori di direktori saya saat ini - bukan jumlah keseluruhan direktori. - hawkeye
@JG - Periksa pembaruan saya ;-) - Pavlos G.


Jawaban:


Saya kira cara termudah adalah dengan mengetik ls -l, atau ls -lh yang akan memberikan ukuran file dalam format yang dapat dibaca manusia (KB, MB, dll).

Jika 'secara rekursif' berarti mencantumkan semua folder berikutnya, misalnya:

/ foo /
/ foo / bar / ....

Maka Anda juga harus menambahkan parameter R, suka ls -lR atau ls -lhR

Informasi lebih lanjut untuk ls dapat ditemukan dengan mengetik man ls

Memperbarui:

Perintah berikut sebagai Lekensteyn diusulkan mungkin akan melakukan pekerjaan:

du -h --max-depth=1 <folder>

-h adalah untuk bisa dibaca manusia
--apparent-size adalah cara lain untuk menampilkan ukuran sebagaimana telah dinyatakan
--max-depth adalah level subfolder yang ingin Anda tuju.


44
2017-08-18 12:00



Apa yang harus digunakan untuk kedalaman maksimal? -1? - Dylan Hunt


apt-get install ncdu

enter image description here

Ini juga interaktif jadi jika Anda ingin memeriksa sub folder hanya UP, BAWAH, dan Enter untuk itu.


46
2017-08-19 04:59



Hanya apa yang saya cari. Terima kasih banyak! - Mathlight
Mungkin rekomendasi software paling menakjubkan yang pernah saya dapatkan - SomethingSomething


Untuk mendapatkan ukuran total direktori dan semua anak

du -hs directory/*

23
2017-08-18 12:16



Saya ingin tingkat berikutnya turun dari itu - ukuran rekursif dari semua anak tingkat pertama. - hawkeye
Saya akan mengedit jawaban saya. Anda perlu menggunakan direktori du -h / * - Richard Holloway


Juga periksa tree. Ini tidak diinstal secara default tetapi merupakan repositori.

Contoh:

richard@legend:~$ tree Applications/ -s
Applications/
├── [           4096]  AlexFTPS-1.0.2
│   ├── [      31232]  AlexPilotti.FTPS.Client.dll
│   ├── [     274432]  C5.dll
│   ├── [       1457]  C5-License
│   ├── [      35147]  COPYING
│   ├── [       7639]  COPYING.LESSER
│   ├── [         70]  ftps
│   ├── [      28672]  ftps.exe
│   ├── [      98304]  Plossum CommandLine.dll
│   ├── [       1557]  Plossum-License
│   └── [       2560]  README
└── [           4096]  src
    └── [     180849]  AlexFTPS_bin_1.0.2.zip

Opsi lainnya dapat ditemukan di halaman manual.


15
2017-08-18 12:13



Haruskah ukuran ditampilkan? - hawkeye
J G: -s menunjukkan ukuran. - Richard Holloway
Menunjukkan ukuran catatan direktori daripada ukuran direktori penuh. - Steven Lu


Karena Anda tidak secara khusus menyebutkan Anda memerlukan solusi berbasis terminal, saya pikir baobab a.k.a. Penganalisis Penggunaan Disk tidak ada dalam daftar.

Ini diinstal di Ubuntu secara default dan tidak persis apa yang Anda inginkan dalam UI grafis yang bagus dengan kemampuan untuk menelusuri hirarki direktori.

Selain menampilkan daftar direktori dengan ukuran mereka, itu juga menunjukkan cincin atau bagan hierarki penggunaan filesystem, yang sangat berguna untuk memvisualisasikan direktori yang mengambil ruang paling banyak.

baobab the Disk Usage Analyzer


11
2017-08-19 00:31



suka ini. Terima kasih. - Ahmad Azwar Anas


SEBUAH solusi terminal adalah du perintah:

du --all --human-readable --apparent-size

(steno: du -ah --apparent-size)

du menampilkan penggunaan disk untuk setiap file dan direktori. Opsi dijelaskan:

  • --all, -a - tampilkan ukuran untuk file juga, bukan hanya direktori
  • --human-readable, -h - tampilkan ukuran dalam format yang dapat dibaca manusia, mis. 10K (10 kilobyte), 10 (10 byte)
  • --apparent-size - tampilkan ukuran file sebenarnya, bukan ukuran yang digunakan oleh disk.

4
2017-08-18 12:02



Saya hanya ingin anak-anak tingkat pertama - hawkeye
mereka tingkat E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E mereka --max-depth=1 - nikoskip
tip bagus @nikoskip! Senang juga mengetahui singkatannya, --max-depth=1 dapat disingkat menjadi -d1. - Lekensteyn
cara mendapatkan semua ini dalam urutan ukuran yang menurun .. - kRazzy R
bagaimana saya melihat isinya dan mengosongkan: / dev / sda5 ext4 430G 381G 27G 94% / laptop saya kurang dari 1 bulan dan sangat penuh sehingga tidak masuk akal - kRazzy R


Ini tampaknya melakukan trik ketika simlink terlibat.

ls -LRlh

2
2018-04-20 10:58



diberikan jawaban tidak memberi saya rincian untuk simlink (ls-lhR), angka-angka yang tercantum di sebelahnya tidak sesuai dengan ukuran yang tepat dari masing-masing nilai baik. Jawaban saya memberi saya sebuah hierarki dengan struktur pohon yang ditetapkan dan jawaban yang benar .... ATAU apakah Anda mengacu pada beberapa jawaban lain yang diberi hak suara? - Mulki
E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E E mereka Silahkan sunting dan masukkan komentar dalam jawaban ... Terima kasih atas penjelasannya. ;-) - Fabby


Untuk mendapatkan daftar yang diurutkan, masukkan semuanya dalam MB dan sortir:

du -m * | sort -n

Atau gunakan alat seperti DiskReport untuk menghasilkan laporan dari pohon disk penuh.


0
2017-08-19 21:22





Solusi terminal lain dengan find dan sortir (dengan file, kolom 1)

$ find . -maxdepth 1 ! -path . -printf "%s %p\n" | sort -n -k1                              
178 ./somefile.txt
219 ./somefile2.txt
4096 ./c
4096 ./cs2
4096 ./perl
4096 ./python
4096 ./random
4096 ./sh

0
2017-08-19 22:26



Ini tidak menunjukkan ukuran direktori. - muru