systemadmin.es > Storage > Sistemas de ficheros > Listar ficheros ordenados por tamaño en un sistema de ficheros

Listar ficheros ordenados por tamaño en un sistema de ficheros

Muchas veces resulta útil obtener un listado de todos los ficheros ordenados por tamaño para un determinado sistema de ficheros sin tener en cuenta otros sistemas de ficheros que pueden estar montados en algún punto. Vamos a ver como hacerlo con find y sort.

Para ello es tan simple como usar el siguiente comando:

find / -xdev -type f -ls | sort -n -k 7

En este caso a find le indicamos:

  • Buscamos en el sistema de ficheros /
  • Con -xdev indicamos que no cruce sistemas de ficheros (se ignoran los que no pertenezcan al root) Por ejemplo, en un sistema con estos sistemas de ficheros:
    # df -hP
    Filesystem            Size  Used Avail Use% Mounted on
    /dev/sda2             3.9G  2.8G  904M  76% /
    /dev/mapper/local-var   64G   24G   38G  39% /var
    /dev/mapper/local-local   64G  6.1G   55G  11% /usr/local
    tmpfs                 2.0G     0  2.0G   0% /dev/shm
    /dev/sda1              99M   23M   72M  24% /boot
    

    Con find y -xdev solo accederíamos a los ficheros almacenados en /dev/sda2

  • Mediante -type f indicamos que solo queremos ver ficheros regulares
  • Finalmente con -ls le indicamos que nos muestre la salida como si de un ls se tratara. Una salida de ejemplo podría ser:
      6028 3008 -rw-------   1 root     root      3065290 May 23  2008 /boot/initrd-2.6.18-53.1.21.el5PAE.img
    

A continuación mediante sort podemos ordenar los ficheros:

  • Primero de todo indicamos mediante -n que trataremos los valores como numéricos. Si no lo especificamos la ordenación sería por los caracteres ASCII
  • A continuación indicamos la columna por la que queremos ordenar mediante el parámetro key. En este caso el tamaño del fichero lo podemos encontrar en la columna 7 por que pasaríamos como parámetro -k 7

Deja un comentario:

XHTML - Tags permitidos:<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>