
Cuando trabajas en Linux, utilizas el comando ls, desde la terminal del sistema, para listar el contenido del directorio actual o de cualquier otro directorio que le pases como parámetro. Además este comando ofrece un gran número de opciones que te permite elegir qué mostrar y cómo hacerlo.
Entre todas las opciones, tenemos la opción -d, la cual te permitirá listar el nombre del directorio en vez de los archivos contenidos en él. Y además, tenemos el patrón */ el cual hará que solamente liste los directorios e ignore los archivos. Así, si tenemos un directorio de ejemplo en el que al ejecutar el comando ls obtenemos lo siguiente:
1 2 3 4 5 6 7 | $ ls -l -rw-r--r-- 1 root root 0 Jun 15 18:21 archivoA.txt -rw-r--r-- 1 root root 0 Jun 15 18:21 archivoB.txt -rw-r--r-- 1 root root 0 Jun 15 18:21 archivoC.txt drwxr-xr-x 2 root root 4096 Jun 15 18:21 directorioA drwxr-xr-x 2 root root 4096 Jun 15 18:22 directorioB drwxr-xr-x 2 root root 4096 Jun 15 18:21 directorioC |
Si solamente ejecutamos el comando con el patrón para que solo muestre los directorios, ignorando los archivos:
1 2 3 4 5 6 7 8 9 10 | $ ls -l */ directorioA/: total 0 directorioB/: total 0 -rw-r--r-- 1 root root 0 Jun 15 18:22 archivo1.txt directorioC/: total 0 |
Vemos que nos muestra los directorios en cuestión, pero además, nos muestra los archivos contenidos en dichos directorios. Para evitar esto, vamos a añadir la opción -d al comando anterior, por lo que tendremos:
1 2 3 4 | $ ls -ld */ drwxr-xr-x 2 root root 4096 Jun 15 18:21 directorioA/ drwxr-xr-x 2 root root 4096 Jun 15 18:22 directorioB/ drwxr-xr-x 2 root root 4096 Jun 15 18:21 directorioC/ |
De esta forma, solamente obtendremos el listado de los directorios, ignorando los archivos que contengan.
Ten en cuenta que en los ejemplos hemos usado también la opción -l para mostrar algo más de información, pero esta opción es opcional ya que no interfiere en nuestra misión.
