En Linux, usamos el comando «ls» para navegar a través de directorios en busca de archivos. Enumerar todos los archivos y carpetas en Linux es un comando común. Pero en ocasiones, solo debemos listar los archivos y no las carpetas. En ese caso, este comando no funciona. Para listar solo los archivos usando el comando «ls», necesitamos escribir «ls *.txt». Pero este comando funciona si solo necesitamos enumerar los archivos de texto, ya que este comando solo enumera los archivos de texto. Si necesitamos enumerar todos los archivos y no solo los archivos de texto, este comando se vuelve inútil. Para ello, Linux nos proporciona muchas opciones. Para listar todos los archivos en un directorio específico solamente, usamos los siguientes métodos:
Uso del comando Ls para enumerar los directorios
El comando ls es el que se puede usar para listar los archivos de los directorios. El comando «ls» funciona de la misma manera que recorremos manualmente el directorio y luego obtenemos todos los archivos que queremos, pero nos facilita registrarlos con solo ejecutar un comando simple. También nos permite pasar las opciones junto con él para indicarle al compilador que enumere los archivos de acuerdo con su deseo.
Al igual que el comando ls mencionado anteriormente, pasamos la opción –p. Si queremos ver todos los archivos ocultos, agregamos la opción “-a” al comando ls. Si conocemos el nombre del archivo o una parte de él, también podemos usar el comando «run-parts regex». Este comando enumera todos los archivos cuyos nombres coinciden con el nombre proporcionado. Pero para que este comando funcione, debemos conocer al menos una parte del nombre del archivo.
Listado de archivos por nombre
Cuando se trata de enumerar los archivos por nombres, usar el comando ls es la forma más fácil de enumerarlos. Para listar el nombre de los archivos, simplemente tenemos que escribir el siguiente comando:
En la sintaxis provista, usamos el comando ls junto con el encabezado y el número «4». Esto significa que solo muestra los primeros cuatro archivos encontrados donde el encabezado indica que cada nombre de archivo se imprime en una nueva línea en lugar de imprimir todo en la misma línea para facilitar la lectura. Cuando ejecutamos el comando anterior, la salida se muestra como en el siguiente fragmento en el que se muestran los nombres de los archivos en nuestra terminal.
Ahora, supongamos que queremos mostrar todos los archivos en la terminal. Simplemente ejecutamos el siguiente comando:
Como podemos ver en la captura de pantalla, todos los archivos que están almacenados actualmente en el directorio de inicio se muestran al ejecutar el comando anterior.
Al igual que en el ejemplo anterior, podemos imprimir los detalles completos de los archivos junto con su nombre pasando otra bandera que es «-l» junto con el comando ls usando el siguiente comando:
Como se ve en la siguiente figura, los detalles de los archivos también se imprimen en la terminal:
Listado de archivos en orden inverso
Usando el comando ls, también podemos imprimir los nombres de los archivos en orden inverso. Esto significa que queremos enumerar los archivos en orden inverso, o que nuestro compilador comience a enumerar los archivos desde el último hasta el primero. Para eso, ejecutamos el siguiente comando:
Después de ejecutar este comando, obtenemos el siguiente resultado en el que los archivos se imprimen en orden inverso:
Listado de directorios
El comando ls nos permite listar los archivos así como los directorios. Cuando solo queremos listar el nombre de los directorios dentro de una ubicación específica, simplemente usamos la opción «-d» con los archivos ls. La bandera «d» denota los directorios.
Después de ejecutar el comando anterior, todos los directorios que se crean en el directorio de inicio se muestran en la terminal como se muestra en la siguiente figura:
Listado de archivos usando el comando Run-Parts Regex
La expresión regular run-parts es el comando de Linux que se utiliza para enumerar todos los archivos que están almacenados en nuestro sistema. Se encarga de mostrar todos los archivos disponibles. Una expresión regular es una herramienta o patrón que se puede usar para hacer coincidir las cadenas que siguen cualquier patrón. Cuando se trata de buscar los archivos, se puede usar el comando «run apart regex». Es eficaz para dar de alta los archivos de los directorios. Para eso, debemos ejecutar el siguiente comando:
Cuando ejecutamos el comando provisto, obtenemos todos los archivos registrados que están almacenados en el directorio de inicio de nuestro sistema. Cuando queremos buscar desde cualquier directorio específico, solo tenemos que pasar la ruta del directorio desde el que se van a buscar los archivos.
Listado de archivos usando el comando Buscar
Para enumerar todos los archivos solo en un directorio específico, usamos el comando de búsqueda. Al igual que el comando «ls», hay algunas opciones que se pueden pasar con el comando de búsqueda para indicarle a nuestro compilador que obtenga el resultado deseado.
Al usar max depth -1, nos aseguramos de que estamos buscando solo en el directorio actual. Si queremos buscar en todos los archivos de ese directorio y todos los demás subdirectorios, eliminamos esta opción donde «tipo f» indica el tipo de archivos que estamos buscando.
Al ejecutar este comando, buscamos los archivos que están almacenados actualmente en nuestro directorio de inicio. Supongamos que queremos buscar el otro directorio. Simplemente reemplazamos el punto “.” con la ruta del directorio que debe usarse para dar de alta los archivos. En el siguiente fragmento, se muestra el resultado del comando en el que todos los archivos se dan de alta en nuestro terminal.
Conclusión
En esta guía, discutimos cómo se enumeran los archivos usando los comandos y cómo podemos enumerar varios archivos de acuerdo con nuestras necesidades sin buscarlos manualmente. Con un solo comando, podemos obtener los archivos deseados. Después de presentarle los métodos para enumerar los archivos, realizamos varios ejemplos para que le resulte más fácil implementarlos según sus necesidades.