Aquí hay una solución rápida, use du + sort. Prueba esto:
du -smc * | sort -n
Esto ignorará los archivos ocultos, pero esa es otra solución fácil:
du -smc .[^.] .??* * | sort -n
Esto puede causar advertencias sobre si uno o más de los patrones anteriores no coinciden con un archivo. El primer patrón .[^.]coincide con los dos nombres de archivo de caracteres que comienzan con. a excepción de ..., el segundo patrón, .??*coincide con las tres letras o más nombres de archivos que comienzan con. y * coincide con todos los archivos que no comienzan con. Para obtener una lista más sofisticada, como encontrar todos los archivos más grandes que X en todo un sistema de archivos, o mantener una lista de crecimiento del sistema de archivos, tengo un script de shell de bricolaje que he escrito y puedo compartir si está interesado.
sort -nrsi quiere los valores más grandes en la parte superior.Para enumerar los archivos en cualquier lugar
/tmp, ordenados por tamaño:Para enumerar los archivos y los árboles de directorios inmediatamente debajo
/tmp, ordenados por tamaño:Para enumerar todos los archivos y árboles de directorios en cualquier lugar
/tmp, ordenados por tamaño:(Un ejemplo para ilustrar la diferencia entre los tres comandos: si hay un archivo
/tmp/dir/file, la primera lista de comandos/tmp/dir/file, la segunda lista/tmp/diry la tercera lista ambas).Todos los comandos anteriores muestran tamaños en kilobytes. Si bien GNU du puede generar tamaños "legibles para humanos" (con multiplicadores k, M, G, etc.), ordenarlos es otra cuestión. Bastante reciente GNU coreutils (≥7.4) puede hacerlo: simplemente reemplace
du -kcondu -hysort -k1n -k2consort -k1h -k2. De lo contrario, aquí hay un script awk crudo para convertir a tamaños con sufijo (redondeando hacia abajo); simplemente canalice lasortsalida de arriba en él.fuente
dullamada.Estoy usando el siguiente alias para ello:
alias ds='du -x --all --max-depth=1 . | sort -n'Imprime tamaños de todos los archivos y subdirectorios de primer nivel del directorio actual.
fuente
Con la versión actual de gnu sort (y tomando prestado el patrón de archivo @ penguin359)
Con una versión anterior de tipo
EDITAR: parámetro -S agregado
dupara no incluir subdirectorios.fuente
--apparent-sizea du parámetros.ACTUALIZACIÓN: he descartado el script anterior. Aquí hay una nueva versión, usando
duyawk(la anterior usadatreeysed)Esta es la salida de:
dusort ~/test 1Aquí está el guión
fuente
treehace. si desea utilizar el espacio en disco, entoncesduhace eso ... (treeno totaliza un directorio)man duque también puede informar el "tamaño aparente del archivo" ...The apparent size of a file is the number of bytes reported bywc -c 'en archivos normales, o más generalmente,ls -l --block-size=1' orstat --format =% s '. Por ejemplo, un archivo que contiene la palabrazoo' with no newline would, of course, have an apparent size of 3.muestra los archivos más grandes primero, por lo que puede qusarlos tan pronto como haya visto lo suficiente.
fuente