Mi Blog
Cómo contar ficheros y directorios en GNU/Linux

Cómo contar ficheros y directorios en GNU/Linux

 
(2 votos)

Contar el total de ficheros y/o directorios que hay dentro de una estructura de directorios desde la línea de comandos, a veces no es sencillo para las personas que están empezando con la línea de comandos de GNU/Linux.

Seguid leyendo y os enseñaré a buscar ficheros y directorios de forma rápida y sencilla en GNU/Linux...

⬇️ Compra en Amazon el hardware que utilizo ⬇️

🔥 ¡DESCÚBRELOS! 🔥

 

 

¿QUÉ ES LA HERRAMIENTA FIND?

La herramienta 'find' en GNU/Linux es una utilidad de línea de comandos que se utiliza para buscar archivos y directorios en un sistema de archivos. Proporciona una forma flexible y potente de realizar búsquedas basadas en una variedad de criterios, como el nombre del archivo, el tamaño, la fecha de modificación, los permisos y otros atributos.

 

 

Find es la mejor herramienta para buscar ficheros y directorios en GNU/Linux

 

 

1.- ELEMENTOS NECESARIOS PARA ESTE TUTORIAL

  • Un PC con cualquier distribución de GNU/Linux

 

 

2.- ESTRUCTURA DE EJEMPLO

A modo de ejemplo, he creado la siguiente estructura de directorios y ficheros. Hay directorios, subdirectorios y ficheros en el directorio raíz y dentro de algunos subdirectorios:

[raul@sid count]$ find
.
./dir1
./dir1/file1.txt
./dir2
./dir2/file1.txt
./dir2/file2.txt
./dir3
./dir3/file1.txt
./dir3/file2.txt
./dir3/file3.txt
./dir4
./dir4/file1.txt
./dir4/file2.txt
./dir4/file3.txt
./dir4/file4.txt
./dir5
./dir5/file1.txt
./dir5/file2.txt
./dir5/file3.txt
./dir5/file4.txt
./dir5/file5.txt
./dir5/dir51
./dir5/dir52
./dir5/dir53
./file1.txt
./file2.txt
./file3.txt

 

 

3.- CONTAR FICHEROS EN UN DIRECTORIO

Para listar los ficheros que hay dentro de un directorio, de forma no recursiva, limitaremos el comando find -con maxdepth- al directorio actual y filtrando por los ficheros de tipo "file" con la opción de -type:

[debian@sid count]$ find . -maxdepth 1 -type f
./file1.txt
./file2.txt
./file3.txt

 

 

Para contar los ficheros, tan solo debemos añadir al final el comando "wc -l" de la siguiente forma:

[debian@sid count]$ find . -maxdepth 1 -type f | wc -l
3

 

 

4.- CONTAR DIRECTORIOS EN UN DIRECTORIO

Para listar los directorios que hay dentro de un directorio, de forma no recursiva, limitaremos el comando find -con maxdepth- al directorio actual y filtrando por los ficheros de tipo "directory" con la opción de -type y excluyendo el directorio actual que se nombra como ".":

[raul@sid count]$ find . -maxdepth 1 -type d -not -path "."
./dir1
./dir2
./dir3
./dir4
./dir5

 

 

Para contar los directorios, tan solo debemos añadir al final el comando "wc -l" de la siguiente forma:

[raul@sid count]$ find . -maxdepth 1 -type d -not -path "." | wc -l
5

 

 

5.- CONTAR FICHEROS EN UN DIRECTORIO DE FORMA RECURSIVA

Para listar los ficheros que hay dentro de un directorio, de forma recursiva, filtraremos por los ficheros de tipo "file" con la opción de -type:

[raul@sid count]$ find . -type f
./dir1/file1.txt
./dir2/file1.txt
./dir2/file2.txt
./dir3/file1.txt
./dir3/file2.txt
./dir3/file3.txt
./dir4/file1.txt
./dir4/file2.txt
./dir4/file3.txt
./dir4/file4.txt
./dir5/file1.txt
./dir5/file2.txt
./dir5/file3.txt
./dir5/file4.txt
./dir5/file5.txt
./file1.txt
./file2.txt
./file3.txt

 

 

Para contar los ficheros, tan solo debemos añadir al final el comando "wc -l" de la siguiente forma:

[raul@sid count]$ find . -type f | wc -l
18

 

 

6.- CONTAR DIRECTORIOS EN UN DIRECTORIO DE FORMA RECURSIVA

Para listar los directorios que hay dentro de un directorio, de forma recursiva, filtraremos por los directorios de tipo "directory" con la opción de -type y excluyendo el directorio actual que se nombra como ".":

[raul@sid count]$ find . -type d -not -path "."
./dir1
./dir2
./dir3
./dir4
./dir5
./dir5/dir51
./dir5/dir52
./dir5/dir53

 

 

Para contar los directorios, tan solo debemos añadir al final el comando "wc -l" de la siguiente forma:

[raul@sid count]$ find . -type d -not -path "." | wc -l
8

 

 

ENJOY!


Acerca de Mi

RPF

Soy Ingeniero Téc. Industrial Mecánico, Administrador de Sistemas Informáticos, Desarrollador de Aplicaciones Informaticas Web, Técnico Superior en PRL, Experto en Energías Renovables... y trabajo actualmente como Senior DevOPS en HP SCDS.

Contactar conmigo

Dirección: León, España

E-Mail: Contactar

Web: https://www.raulprietofernandez.net

Skype: raul.lnx

APÚNTATE GRATIS

VIP RPF
Entra en la Comunidad VIP y consigue acceso a las descargas en PDF, Trucos y Videotutoriales ocultos y mucho más... ¡Muy Pronto!

Si haces login, serás automáticamente suscrito a mi lista de Newsletter. Siempre podrás borrarte cuando quieras.