Daftar file lebih besar dari ukuran file yang ditentukan


74

Bagaimana saya bisa membuat ls (atau perintah lain) hanya daftar file yang lebih besar dari ukuran file tertentu?

Jawaban:


128

Gunakan find dan -sizebenderanya.

Untuk menemukan file yang lebih besar dari 100MB:

find . -type f -size +100M

Jika Anda ingin direktori saat ini saja:

find . -maxdepth 1 -type f -size +100M

2
Jika Anda harus memasukkan ukuran dalam byte, gunakan find . -type f -size +4096c ( superuser.com/a/204571/111289 )
aexl

23

Jika Anda ingin melihat semua file lebih dari 100 juta dan untuk melihat di mana mereka berada dan berapa ukurannya coba ini:

find . -type f -size +100M -exec ls -lh {} \;

1
Apakah sama dengan perintah pertama @ Nifle
Luke Kanada

1
Saya pikir akan lebih mudah untuk menggunakan parameter printf -printf "%p %s". Lihat: unixhelp.ed.ac.uk/CGI/man-cgi?find
Nux

@Nux: tip yang bagus. -printf '%9s %p\n'bekerja dengan baik untuk saya.
seanf

2

Gunakan yang berikut ini:

find / -size gt 2MB

atau:

find / -size => 2000000 

3
Bagaimana ini meningkatkan jawaban yang diterima?
Dave M

Meskipun kami berterima kasih atas jawaban Anda, akan lebih baik jika memberikan nilai tambahan di atas jawaban lainnya. Dalam hal ini, jawaban Anda tidak memberikan nilai tambahan, karena pengguna lain sudah memposting solusi itu. Jika jawaban sebelumnya bermanfaat bagi Anda, Anda harus memilihnya alih-alih mengulangi informasi yang sama.
Toby Speight
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.