Cómo comprobar si un directorio está vacío en Linux

LinuxBeginner
Practicar Ahora

Introducción

En este laboratorio, aprenderás cómo determinar si un directorio está vacío en Linux utilizando diversas herramientas de línea de comandos. Comenzarás utilizando el comando fundamental ls con la opción -a para listar todos los contenidos del directorio, incluyendo archivos ocultos, y entender el significado de entradas como . y ...

A continuación, explorarás el comando find para buscar archivos de forma recursiva dentro de un directorio, lo que proporciona otro método para comprobar la presencia de contenido. Finalmente, aprenderás cómo utilizar el comando du -sh para verificar el tamaño de un directorio, lo que ofrece una forma rápida de confirmar si contiene algún dato. Al completar estos pasos, adquirirás habilidades prácticas para comprobar de manera eficiente si un directorio está vacío en un entorno Linux.

Listar el contenido del directorio con ls -a

En este paso, aprenderás cómo listar el contenido de un directorio utilizando el comando ls. El comando ls es uno de los comandos más fundamentales en Linux, utilizado para listar archivos y directorios.

Por defecto, ls muestra los archivos y directorios visibles en tu ubicación actual. Tu ubicación actual es el directorio en el que estás trabajando actualmente. Cuando abres la terminal en este laboratorio, tu ubicación actual es /home/labex/project.

Intentemos el comando ls básico. Escribe lo siguiente en tu terminal y presiona Enter:

ls

Puedes ver alguna salida, o quizás nada si el directorio está vacío.

Ahora, exploremos una opción útil para el comando ls: -a. La opción -a significa "todos" y le dice a ls que muestre todos los archivos, incluyendo los ocultos. En Linux, los archivos y directorios que comienzan con un punto (.) se consideran ocultos. Los archivos de configuración a menudo se ocultan de esta manera.

Escribe el siguiente comando y presiona Enter:

ls -a

Probablemente verás más entradas que antes, incluyendo entradas como . y ...

.
..
.zsh_history
  • . representa el directorio actual.
  • .. representa el directorio padre (el directorio de un nivel superior).
  • .zsh_history es un archivo oculto que almacena tu historial de comandos.

Comprender los archivos ocultos es importante, ya que a menudo contienen configuraciones para aplicaciones y el sistema.

Practica el uso de ls y ls -a en tu directorio ~/project. Observa la diferencia en la salida.

Haz clic en Continuar para pasar al siguiente paso.

Buscar archivos con el comando find

En este paso, aprenderás cómo utilizar el comando find para buscar archivos y directorios dentro de una ubicación especificada. Mientras que ls lista el contenido de un solo directorio, find puede buscar de forma recursiva a través de subdirectorios.

La sintaxis básica de find es:

find [punto_de_inicio] [expresión]
  • [punto_de_inicio] es el directorio donde comienza la búsqueda. . significa el directorio actual.
  • [expresión] especifica lo que estás buscando (por ejemplo, nombre de archivo, tipo, tamaño).

Creemos un archivo simple para buscar. Utilizaremos el comando touch, que crea un archivo vacío. Asegúrate de estar en el directorio ~/project.

touch my_document.txt

Ahora, usemos find para localizar el archivo que acabamos de crear. Comenzaremos la búsqueda en el directorio actual (.) y buscaremos un archivo llamado my_document.txt.

find . -name my_document.txt

La opción -name le dice a find que busque entradas con un nombre específico.

Deberías ver la ruta al archivo como salida:

./my_document.txt

Esto confirma que find localizó el archivo con éxito.

El comando find es muy poderoso y tiene muchas opciones para buscar según diferentes criterios, como el tipo de archivo (-type f para archivo, -type d para directorio), el tamaño, la fecha de modificación y los permisos.

Por ejemplo, para encontrar todos los directorios dentro del directorio actual y sus subdirectorios, podrías usar:

find . -type d

Esto listaría todos los directorios, incluyendo . y .. y cualquier subdirectorio que hayas creado.

Experimenta con find en tu directorio ~/project. Intenta crear otro archivo o directorio y luego usa find para localizarlo.

Haz clic en Continuar para continuar.

Verificar el tamaño del directorio con du -sh

En este paso, aprenderás cómo verificar el uso de disco de archivos y directorios utilizando el comando du. Esto es útil para entender cuánto espacio ocupan tus archivos.

El comando du significa "uso de disco" (disk usage). Por defecto, du muestra el uso de disco de cada archivo y subdirectorio dentro de un directorio dado, en bloques. Esta salida puede ser bastante detallada.

Intentemos el comando du básico en tu directorio ~/project:

du

Verás una salida que muestra el tamaño de my_document.txt (probablemente 0 ya que está vacío) y el tamaño total del directorio actual.

Para obtener una salida más legible para humanos, podemos usar opciones con du. Dos opciones comunes son:

  • -s: Resumir. Esta opción muestra solo el tamaño total del directorio especificado, en lugar de listar cada archivo y subdirectorio.
  • -h: Legible para humanos. Esta opción muestra los tamaños en un formato más fácil de leer para los humanos (por ejemplo, KB, MB, GB).

Combinemos estas opciones para obtener un resumen del uso de disco de tu directorio ~/project en un formato legible para humanos.

du -sh .

El . al final especifica que queremos verificar el uso de disco del directorio actual.

La salida se verá algo así:

4.0K    .

Esto indica que el directorio actual (.) está ocupando aproximadamente 4.0 Kilobytes de espacio. El tamaño exacto puede variar ligeramente dependiendo del sistema y la cantidad de archivos ocultos.

El comando du -sh es una forma rápida de ver el tamaño total de un directorio. También puedes especificar una ruta de directorio diferente en lugar de . para verificar el tamaño de otros directorios.

Por ejemplo, para verificar el tamaño de tu directorio de inicio (~), podrías usar:

du -sh ~

Practica el uso de du -sh en diferentes directorios si has creado alguno más en este laboratorio.

Haz clic en Continuar para completar este paso y el laboratorio.

Resumen

En este laboratorio, aprendiste cómo verificar si un directorio está vacío en Linux utilizando varios comandos fundamentales. Comenzaste utilizando ls -a para listar todo el contenido, incluyendo archivos ocultos y las entradas especiales . (directorio actual) y .. (directorio padre), que siempre están presentes.

Luego, comenzaste a explorar el comando find, una herramienta poderosa para buscar archivos y directorios de forma recursiva dentro de un punto de inicio especificado.