Programación BASH

Bash if -e y -s y otros operadores de prueba de archivos

Bash if -e y -s y otros operadores de prueba de archivos

Al trabajar con archivos en cualquier sistema operativo, es obligatorio que el usuario pruebe esos archivos para ciertos aspectos, como su propiedad, derechos de acceso, contenido, existencia, etc. Estos aspectos se pueden resolver al acoplar la declaración "si" con varios operadores de prueba de archivos en Bash. Los "if -e" y "if -s" son tales operadores en Bash, utilizados para probar la existencia de un archivo. La diferencia entre los dos es que el primero solo prueba la existencia de un archivo, mientras que el segundo también verifica si hay algún contenido en ese archivo o no. Hoy, intentaremos comprender el uso de estos dos operadores, junto con algunos otros operadores de prueba de archivos en Bash.

Nota: Para demostrar el uso de operadores de prueba de archivos en Bash, hemos utilizado Linux Mint 20.

Ejemplos de uso de operadores de prueba de archivos en Bash

Hay diferentes formas en las que se pueden utilizar los operadores de prueba de archivos "if -e" y "if -s". Para explicar su uso, compartiremos algunos ejemplos contigo.

Ejemplo de uso del operador "if -e"

Para usar el operador "if -e" en Bash, debe seguir estos pasos:

Primero, hemos creado un archivo de texto vacío llamado Test.txt en nuestro directorio de inicio. Luego creamos un archivo bash llamado FileTestOperators.sh en el mismo directorio. Después de crear este archivo, escribimos el script que se muestra en la siguiente imagen en nuestro archivo. En este script de bash, declaró una variable llamada "archivo" y le asignó nuestro archivo de texto llamado Prueba.txt como su valor. Luego tenemos una declaración "if -e", que produce una salida "verdadera" si existe algún archivo especificado.

Para probar nuestro script, lo ejecutaremos usando el comando que se indica a continuación:

$ bash FileTestOperators.sh

En nuestro caso, dado que existía el archivo de texto, es por eso que la salida de nuestro script será verdadera, como se muestra en la siguiente imagen:

Ejemplo de uso del operador "if -s"

Para usar el operador "if -s" en Bash, debe realizar los pasos que se enumeran a continuación:

Para este ejemplo, nuestro script bash es el mismo que usamos anteriormente. Acabamos de cambiar la declaración "if -e" a "if -s". Además, hemos utilizado el mismo archivo de texto vacío Test.TXT.

Ahora, cuando ejecutamos este script, la salida será falsa porque el operador "if -s" devuelve verdadero si existe un archivo y también si no está vacío. Ya que en nuestro caso, aunque el archivo existía, aún estaba vacío por eso nuestra salida resultó ser falsa como se muestra en la siguiente imagen:

Para que esta bandera sea verdadera, escribiremos un texto ficticio en nuestro archivo de texto, como se muestra a continuación:

Luego ejecutamos nuestro script bash nuevamente, y esta vez la salida será verdadera, como se muestra en la siguiente imagen porque el archivo de texto tiene algo de texto ahora.

Ejemplos de uso de otros operadores de prueba de archivos

Aparte de los operadores "if -e" y "if -s", también hay otros operadores de prueba de archivos. A continuación, compartiremos con usted algunos de los operadores de prueba de archivos más importantes además de los que se discutieron anteriormente.

Ejemplo de uso del operador "if -d"

Para usar el operador "if -d" en Bash, debe realizar los pasos que se enumeran a continuación:

Para este ejemplo, nuestro script bash es el mismo que usamos anteriormente. Acabamos de cambiar la declaración "if -s" a "if -d". Además, hemos utilizado el mismo archivo de texto Test.TXT.

El operador "if -d" devuelve verdadero si su archivo es un directorio; de lo contrario, será falso. Dado que nuestro archivo de texto no era un directorio, la salida será falsa, como se muestra en la siguiente imagen:

Ejemplo de uso del operador "if -h"

Para usar el operador "if -h" en Bash, debe seguir estos pasos:

Para este ejemplo, nuestro script bash es el mismo que usamos anteriormente. Acabamos de cambiar la declaración "if -d" a "if -h". Sin embargo, hemos utilizado un archivo diferente para probar esta vez, que de hecho era un enlace simbólico llamado NewBash.sh.

El operador "if -h" devuelve verdadero si su archivo es un enlace simbólico; de lo contrario, será falso. Dado que nuestro archivo de prueba era un enlace simbólico, el resultado será verdadero, como se muestra en la siguiente imagen:

Ejemplo de uso del operador "if -r"

Para usar el operador "if -r" en Bash, debe seguir estos pasos:

Para este ejemplo, nuestro script bash es el mismo que usamos anteriormente. Acabamos de cambiar la declaración "if -h" a "if -r". Además, hemos utilizado el mismo archivo de texto Test.TXT.

La salida del operador "if -r" será verdadera si el usuario actual puede leer el archivo; de lo contrario, será falsa. Dado que nuestro archivo de texto fue legible por nosotros, por lo tanto, la salida será verdadera, como se muestra en la siguiente imagen:

De la misma manera, puede utilizar los operadores "if -w" y "if -x" para comprobar si el propietario actual puede escribir y ejecutar un archivo, respectivamente.

Ejemplo de uso del operador "if -O"

Para usar el operador "if -O" en Bash, debe realizar los pasos que se enumeran a continuación:

Para este ejemplo, nuestro script bash es el mismo que usamos anteriormente. Acabamos de cambiar la declaración "if -r" a "if -O". Además, hemos utilizado el mismo archivo de texto Test.TXT.

La salida del operador "if -O" será verdadera si el usuario actual es el propietario del archivo; de lo contrario, será falsa. Dado que nuestro archivo de texto era de nuestra propiedad, por lo tanto, la salida será verdadera como se muestra en la siguiente imagen:

Conclusión

Este artículo informó al lector sobre el uso de los diferentes operadores de prueba de archivos en Bash usando el sistema operativo Linux. Al hacer uso de estos operadores de prueba de archivos, es muy conveniente para el usuario trabajar con archivos sin ninguna dificultad potencial. También hay algunos otros operadores de prueba de archivos, que se pueden usar para diferentes propósitos.Sin embargo, los que se analizan en este artículo son los más utilizados.

Cómo instalar y jugar a Doom en Linux
Introducción a Doom La serie Doom se originó en los años 90 después del lanzamiento del Doom original. Fue un éxito instantáneo y, desde ese momento e...
Vulkan para usuarios de Linux
Con cada nueva generación de tarjetas gráficas, vemos que los desarrolladores de juegos superan los límites de la fidelidad gráfica y se acercan un pa...
OpenTTD frente a Simutrans
Crear su propia simulación de transporte puede ser divertido, relajante y extremadamente atractivo. Es por eso que debes asegurarte de probar tantos j...