¿Los directorios de solo lista son recursivos en Linux?

Is List Only Directories Recursively Linux



La palabra recursiva se refiere al hecho de que los comandos del sistema operativo Linux o Unix tratan con el contenido de las carpetas, y si una carpeta tiene subcarpetas y documentos, la instrucción aún funciona con todos esos documentos (recursivamente). Es posible que el directorio secundario tenga su propio conjunto de archivos y carpetas (por ejemplo, carpetas grandes), etc. Utilizará diferentes instrucciones de Linux para recorrer de forma recursiva cada carpeta antes de llegar al borde de la carpeta especificada. En ese nivel, las instrucciones de Linux vuelven a un desvío del árbol y repiten el proceso para cualquier subcarpeta que exista. En este tutorial, aprenderá todos los métodos para enumerar los directorios de forma recursiva.

Ejemplos de directorios de listas simples

En primer lugar, debe saber cómo enumerar todos los directorios de su sistema Linux usando el comando list simple. Abra la terminal de línea de comandos y pruebe el comando ls a continuación para enumerar solo los directorios. No solo enumerará los directorios, sino también el número total de subcarpetas y archivos que residen en ellos. El resultado muestra las carpetas con la información sobre su propietario, grupo, privilegios de lectura y escritura y la fecha de creación de las carpetas.







$ Ls -l



Para enumerar todos los directorios y archivos dentro de su sistema Linux, debe usar -la en lugar de -l simple en el comando list. Por lo tanto, ejecute el comando actualizado para hacerlo. La salida muestra todos los archivos y carpetas junto con su información adicional.



$ ls -la





Para simplemente enumerar los directorios sin información adicional, pruebe el siguiente comando seguido del indicador -d.

$ Ls -d * /



También puede usar el mismo comando con pocas modificaciones para enumerar las carpetas junto con su información adicional. Solo tiene que agregar la bandera -l dentro de este comando de la siguiente manera:

$ Ls -l -d * /

Para verificar solo el número total de archivos en el directorio de inicio específico, pruebe el comando que se presenta a continuación en el shell. Obtendrá la cantidad total de archivos en su sistema operativo Linux.

$ Ls -l | egrep -v '^ de

Ejemplo de enumeración de directorios de forma recursiva

Hay diferentes tipos de comandos recursivos disponibles en los sistemas Linux, que se pueden usar para enumerar los directorios de forma recursiva. Para comprender cada uno de ellos por separado, suponga que tiene 5 archivos en su directorio de Linux llamados Documentos.

Lista de forma recursiva con el indicador -lR

Utilizar el indicador -lR en su consulta para enumerar de forma recursiva todos los directorios de su sistema Linux es el primer método para hacerlo. Tras la ejecución del comando de lista a continuación, enumerará todas las carpetas y sus subcarpetas junto con sus detalles adicionales, como se muestra en el resultado.

$ ls -lR

Permítanos enumerar recursivamente todos los archivos o carpetas de alguna carpeta o directorio específico de su sistema Linux. Para este propósito, agregue la ruta de ubicación del directorio específico para enumerarlo de forma recursiva. Queremos enumerar de forma recursiva todos los archivos y carpetas del directorio Documentos que residen en el directorio de inicio utilizando el comando actualizado a continuación. La salida muestra todos los archivos y carpetas dentro de la carpeta Documentos junto con su información adicional.

$ Ls -lR / home / aqsayasin / Documentos /

Lista de forma recursiva con el comando Buscar

Deje en claro que no todos los sistemas Linux, por ejemplo, macOS, SO tipo Unix, tienen la opción de usar -R para enumerar los directorios. En ese caso, hay otros comandos disponibles para satisfacer nuestras necesidades que son el comando de búsqueda e impresión. En este comando, le daremos una ruta a una carpeta junto con la ventaja de usar el comando -ls. Cuando se usa -ls en el comando, esto significa que también mostrará la información adicional sobre los archivos y carpetas que residen en un directorio específico. Pruebe el comando que se indica a continuación en el shell para enumerar de forma recursiva todos los archivos y carpetas del directorio Documentos.

$ buscar / inicio / aqsayasin / Documentos / -print -ls

Ahora, debe probar la misma instrucción en el shell con un pequeño cambio. Evitaremos usar el indicador -ls en este comando para dejar de mostrar información adicional sobre los archivos. Ejecute la consulta que se muestra a continuación en el shell y tendrá el resultado que se muestra.

$ buscar / inicio / aqsayasin / Documentos / -print

Lista de forma recursiva con el comando -du

Echemos un vistazo a otro ejemplo para enumerar de forma recursiva los archivos o directorios con otro método nuevo. Esta vez, usaremos el comando -du para lograr nuestro propósito. Este comando contiene el indicador -a. Junto con las banderas, también tenemos que especificar la ubicación del directorio. Ejecutemos la siguiente instrucción en el shell del terminal para enumerar de forma recursiva todas las carpetas o archivos del directorio Documentos. La salida muestra los 5 registros correspondientes, como se muestra a continuación. Puede ver que este comando también muestra el número de picaduras que residen en cada archivo.

$ du –a /home/aqsayasin/Documents/

Lista de forma recursiva usando el comando de árbol

Por último, pero no menos importante, tenemos un método de comando de árbol muy simple y fácil de usar para enumerar de forma recursiva los archivos o carpetas. No usaremos ninguna bandera en este comando hasta ahora. Debe especificar la ubicación del directorio junto con el árbol de palabras clave. Tengamos un ejemplo de ello usando el comando que se enumera a continuación. La salida muestra la salida de tipo árbol ramificado del directorio Documentos. Muestra 0 directorios y 5 archivos en la salida.

$ árbol / inicio / aqsayasin / Documentos /

Intentemos el mismo comando de árbol con una ubicación diferente. Esta vez estamos enumerando de forma recursiva las carpetas del directorio 'Inicio' del usuario aqsayasin. El resultado muestra las ramas de la carpeta Inicio con un total de 14 carpetas, subcarpetas y 5 archivos diferentes.

$ árbol / casa / aqsayasin /

Conclusión

Hemos probado todos los métodos recursivos para enumerar de forma recursiva los directorios y archivos, por ejemplo, -lR flag, find and print, du y el comando de árbol