Wyświetl listę plików większych niż określony rozmiar pliku


73

Jak mogę sprawić, aby ls (lub dowolne inne polecenie) wyświetlało tylko pliki większe niż określony rozmiar pliku?

Odpowiedzi:


127

Użyj find i jego -sizeflagi.

Aby znaleźć pliki większe niż 100 MB:

find . -type f -size +100M

Jeśli chcesz tylko aktualny katalog:

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

2
Jeśli chcesz find . -type f -size +4096c
— podać

23

Jeśli chcesz zobaczyć wszystkie pliki powyżej 100M i zobaczyć, gdzie one są i jaki jest ich rozmiar, spróbuj tego:

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

1
Robi to samo, co pierwsze polecenie @ Nifle
— Kanadyjczyk Łukasz

1
Myślę, że łatwiej byłoby użyć parametru printf -printf "%p %s". Patrz: unixhelp.ed.ac.uk/CGI/man-cgi?find
— Nux

@Nux: fajna wskazówka. -printf '%9s %p\n'działało dobrze dla mnie.
— seanf

2

Użyj następujących opcji:

find / -size gt 2MB

lub:

find / -size => 2000000 

3
W jaki sposób poprawia to przyjętą odpowiedź?
— Dave M

Chociaż dziękujemy za odpowiedź, byłoby lepiej, gdyby stanowiła dodatkową wartość oprócz innych odpowiedzi. W takim przypadku twoja odpowiedź nie zapewnia dodatkowej wartości, ponieważ inny użytkownik już opublikował to rozwiązanie. Jeśli poprzednia odpowiedź była dla Ciebie pomocna, powinieneś zagłosować zamiast powtarzać te same informacje.
— Toby Speight
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.