Lista de archivos más grandes que el tamaño de archivo especificado

74

¿Cómo puedo hacer que ls (o cualquier otro comando) enumere solo archivos más grandes que un tamaño de archivo específico?

Johnny
fuente

Respuestas:

128

Use find y su -sizebandera.

Para buscar archivos de más de 100 MB:

find . -type f -size +100M

Si solo desea el directorio actual:

find . -maxdepth 1 -type f -size +100M
Nifle
fuente
2
Si usted necesita para pasar el tamaño en bytes, utilice find . -type f -size +4096c ( superuser.com/a/204571/111289 )
aexl
23

Si desea ver todos los archivos de más de 100M y ver dónde están y cuál es su tamaño, intente esto:

find . -type f -size +100M -exec ls -lh {} \;
Ofir Zvik
fuente
1
Hace lo mismo que el primer comando de @ Nifle
canadiense Luke
1
Creo que sería más fácil usar el parámetro printf -printf "%p %s". Ver: unixhelp.ed.ac.uk/CGI/man-cgi?find
Nux
@Nux: buen consejo. -printf '%9s %p\n'funcionó bien para mí
seanf
2

Use lo siguiente:

find / -size gt 2MB

o:

find / -size => 2000000 
Farhan Ahmed
fuente
3
¿Cómo mejora esto la respuesta aceptada?
Dave M
Aunque le agradecemos su respuesta, sería mejor si proporcionara un valor adicional además de las otras respuestas. En este caso, su respuesta no proporciona un valor adicional, ya que otro usuario ya publicó esa solución. Si una respuesta anterior fue útil para usted, debe votarla en lugar de repetir la misma información.
Toby Speight