Uso de variables booleanas en scripts de shell sintaxis, ejemplos y mejores prácticas
- 4429
- 363
- Sta. Enrique Santiago
Las variables booleanas son una parte esencial de la programación, ya que representan valores verdaderos o falsos y a menudo se usan para controlar el flujo de un script. En las secuencias de comandos de shell, las variables booleanas se utilizan para tomar decisiones, controlar bucles y administrar la ejecución condicional. Este artículo proporciona una guía completa para declarar y usar variables booleanas en diferentes proyectiles, como Bash, ZSH y KSH. También exploraremos casos de uso comunes para variables booleanas en scripts de shell, consejos compartidos y mejores prácticas para trabajar con variables booleanas, y proporcionar ejemplos de uso de variables booleanas en scripts de shell del mundo real.
Introducción
En las secuencias de comandos, las variables booleanas se representan típicamente como enteros, con 0 representante verdadero y 1 representante FALSO. Esta convención se basa en el hecho de que los comandos y utilidades de UNIX generalmente devuelven un estado de salida de 0 para indicar el éxito y un estado no cero para indicar falla.
Declarar y usar variables booleanas en diferentes conchas
- Intento
En Bash, puede representar variables booleanas utilizando valores enteros. Para declarar una variable booleana, simplemente asigne el valor 0 para verdadero o 1 para falso:
is_valid = 0 # true is_error = 1 # falso12 is_valid = 0 # trueis_error = 1 # falso Para usar una variable booleana en una declaración condicional, use la siguiente sintaxis:
if [$ is_valid -eq 0]; luego hacer eco "la entrada es válida."más eco" la entrada no es válida."Fi12345 if [$ is_valid -eq 0]; luego hacer eco "la entrada es válida."más eco" la entrada no es válida."Fi - Zsh
El proceso de declaración y uso de variables booleanas en ZSH es similar al BASH:
is_valid = 0 # true is_error = 1 # falso12 is_valid = 0 # trueis_error = 1 # falso Uso de una variable booleana en una declaración condicional en ZSH:
if [$ is_valid -eq 0]; luego hacer eco "la entrada es válida."más eco" la entrada no es válida."Fi12345 if [$ is_valid -eq 0]; luego hacer eco "la entrada es válida."más eco" la entrada no es válida."Fi - Ksh
En Kornshell (KSH), también puede representar variables booleanas utilizando valores enteros:
is_valid = 0 # true is_error = 1 # falso12 is_valid = 0 # trueis_error = 1 # falso Uso de una variable booleana en una declaración condicional en KSH:
if [$ is_valid -eq 0]; luego hacer eco "la entrada es válida."más eco" la entrada no es válida."Fi12345 if [$ is_valid -eq 0]; luego hacer eco "la entrada es válida."más eco" la entrada no es válida."Fi
Casos de uso común para variables booleanas en scripts de shell
Las variables booleanas a menudo se usan en scripts de shell para:
- Controlar el flujo de un script basado en los estados de salida de comando
- Validar la entrada del usuario o verificar la existencia de archivos o directorios
- Administrar la ejecución condicional de comandos o funciones
- Bucles de control, como los bucles mientras y hasta que
Consejos y mejores prácticas para trabajar con variables booleanas
- Siempre use 0 para verdadero y 1 para falso para mantener la consistencia con las convenciones de Unix.
- Use nombres de variables significativas que indiquen claramente el propósito de la variable booleana.
- Cuando use variables booleanas en declaraciones condicionales, use siempre el operador -EQ para comparar los valores.
- En scripts complejos, considere usar funciones para encapsular las operaciones booleanas relacionadas y mejorar la legibilidad.
Ejemplos de uso de variables booleanas en scripts de shell del mundo real
Aquí hay un ejemplo de un script bash que utiliza una variable booleana para controlar un bucle de tiempo:
#!/bin/bash is_running = 0 contador = 0 while [$ is_running -eq 0]; do contador = $ ((contador + 1)) echo "ejecutando iteración $ contador" si [$ contador 5]; entonces is_running = 1 fi sueño 1 hecho echo "el bucle se ha completado."1234567891011121314151617 | #!/bin/bash is_running = 0counter = 0 while [$ is_running -eq 0]; do contador = $ ((contador + 1)) echo "ejecutando iteración $ contador" si [$ contador 5]; entonces is_running = 1 fi sueño 1Done echo "el bucle se ha completado." |
En este ejemplo, el 'Esta corriendo' La variable booleana se establece inicialmente en '0' (verdadero), haciendo que el bucle while se ejecute. El bucle incrementa el 'encimera' variable con cada iteración y verificación si el 'encimera' ha alcanzado o excedido el valor de 5. Si se cumple la condición, el 'Esta corriendo' variable se establece en '1' (falso), Terminando el bucle.
Otro ejemplo es un script de shell que verifica si existe un archivo y establece una variable booleana en consecuencia:
#!/bin/bash filename = "Ejemplo.txt "file_exists = 1 if [-e" $ filename "]; luego file_exists = 0 echo" El archivo $ filename existe."else echo" el archivo $ filename no existe."Fi if [$ file_exists -eq 0]; luego echo" realizando operaciones en el archivo existente ... " # Agregue las operaciones de su archivo aquí más que echo" omitiendo las operaciones del archivo ... "Fi123456789101112131415161718 | #!/bin/bash filename = "Ejemplo.txt "file_exists = 1 if [-e" $ filename "]; luego file_exists = 0 echo" El archivo $ filename existe."else echo" el archivo $ filename no existe."Fi if [$ file_exists -eq 0]; entonces echo" realizando operaciones en el archivo existente ... " # Agregue las operaciones de su archivo aquí echo echo" omitiendo las operaciones del archivo ... "Fi |
En este guión, el El archivo existe La variable booleana se establece en función de la existencia del archivo especificado. El script luego usa esta variable para ejecutar condicionalmente operaciones de archivo si existe el archivo.
Conclusión
Dominar las variables booleanas en las secuencias de comandos es esencial para escribir scripts eficientes, robustos y mantenibles. Al comprender la sintaxis para declarar y usar variables booleanas en diferentes capas, puede crear scripts que tomen decisiones, controlar bucles y administrar la ejecución condicional de manera efectiva. Recuerde siempre usar nombres variables claros, mantener la coherencia con las convenciones de Unix y seguir las mejores prácticas para garantizar que sus scripts sean fáciles de leer y comprender.
- « (Resuelto) Advertencia Apt-Key está en desuso. Administrar archivos de Keyring en confianza.gpg.D en su lugar
- Cómo configurar Cors en los cubos de Amazon S3 »