¿Qué se establece??

¿Qué se establece??
Set -e se usa dentro del bash para detener la ejecución instantáneamente a medida que sale una consulta mientras tiene un estado distinto de cero. Esta función también se usa cuando necesita saber la ubicación de error en el código en ejecución. Continuemos el artículo para elaborar el concepto de "set -e" en diferentes aspectos de los códigos.

Instale extensiones Bash en Linux. Si ya está instalado, entonces debe actualizar la versión porque la versión debe estar por encima de 4.

Ejemplo 1

Aquí, necesitamos un archivo que tenga el código BASH. Entonces, cree un archivo usando un comando de "toque" utilizando el terminal Ubuntu. Que está escrito como:

$ touch archivo1.mierda

Tomaremos dos enfoques aquí. Uno es usar "set -e" fuera del cuerpo de la función, mientras que el otro es usarlo dentro de la función. Considere un archivo "Archivo1.mierda. Necesitamos el archivo con una extensión de .SH mientras estamos escribiendo el código en lenguaje bash. Este ejemplo trata de agregar una función llamada "Helo".

En esta función, queremos imprimir una línea para que acabamos de usar el comando echo aquí para mostrar el mensaje. Como hemos declarado una función aquí, la llamada de función debe ser requerida aquí. Entonces, al final, hemos usado el nombre de la función como una llamada de función. Aquí "set -e" se usa en los medios de inicio fuera del cuerpo de la función.

Establecer -e

Establecer -e solo relacionarse con escribir o configurar un error que muestra el código.

Hemos utilizado un editor de texto simple que está presente en el sistema Ubuntu de forma predeterminada.

$ Bash File1.mierda

Ahora, avanzando hacia el segundo enfoque donde tenemos que usar "set -e" dentro de la función. Veremos la diferencia entre estos enfoques. Edite el código dado reemplazando "set -e" desde fuera del cuerpo de la función hasta dentro del cuerpo de la función "helo", mientras que el código restante es el mismo que el anterior. Puede verificar desde la imagen insertada.

Ejecute el mismo comando nuevamente en la terminal para obtener el resultado.

Esto significa que "set -e" no causa cambios cuando se usa dentro o fuera del cuerpo de la función.

Ejemplo 2

Este es un ejemplo bastante fácil en el que después de la Declaración de Extensión Bash en un archivo, hemos usado "Set -e" en el cuerpo exterior de la función. El "set -e" permite que el terminal arroje una excepción donde encuentra el error y luego el código detiene la ejecución. Entonces, la función de error se declara aquí. El único propósito de esta función es mostrar el mensaje de error junto con el número de línea que contiene el error.

Hay algo especial en este ejemplo que es el uso de la palabra clave "trampa". Esta palabra clave permite el uso de una función incorporada ERR que tome el número de error de línea y luego lo pase a la función de error. Para este propósito de identificación y visualización de errores, necesitamos agregar una declaración o una variable que no esté incluida en BASH o usar una línea significativa para cambiar los valores de sintaxis.

Trampa "Error $ Linenoe 'err

Según este código, el resultado debe mostrar el error en la línea 10.

Ejecutar el código en el terminal utilizando el archivo. Puede relacionar que el nombre del archivo se muestra con el número de línea y se lanza una excepción que muestra que el comando no se encuentra. En segundo lugar, tener un mensaje de la función para representar el número de línea donde ha ocurrido un error.

Ejemplo 3

Este ejemplo trata de usar dos archivos bash. Uno es file1.sh y el otro es file2.mierda. Considere el archivo2.SH primero. Aquí hemos usado "set -e" y no se usa en el otro archivo. Del mismo modo, en este archivo solo hemos usado la llamada de función, mientras que todo el cuerpo de la función se declara en el otro archivo. Hemos vinculado ambos archivos utilizando la palabra clave "fuente" para que la llamada de función que hicimos aquí pueda ejecutar la función desde el otro archivo.

4 Fuente "Archivo1.mierda

Después de eso, en la llamada de función, también se muestra una palabra.

Echo "Notificación: $ (Helo)"

"Helo" es el nombre de la función.

Ahora, considere el otro archivo de archivo1.mierda. En este archivo se declara la función HELO1 (). En el cuerpo de funciones, hemos mostrado solo un mensaje.

Echo "Espera: $ 1"

Avanzando hacia la otra función que es helo (). Esta es la misma función que se llamó por el nombre en el primer archivo que hemos discutido. Dentro de esta función, hemos usado nuevamente una llamada de función de Helo1 (). Esto se declara arriba de la función actual en el mismo archivo, por lo que no necesitamos vincular ambos archivos utilizando la palabra clave "fuente". Con la llamada de función, se muestra un mensaje:

Helo1 "existe un error"

Todo el rendimiento se realiza de tal manera que ejecutaremos el archivo2.SH en la terminal. Por lo tanto, se ejecutará la primera llamada de función y el control se moverá hacia la función HELO () en el archivo1.mierda. Que ejecutará esta llamada de función y ahora el control se moverá hacia la primera función del archivo. Veamos cómo se muestra la salida.

$ Bash File.mierda

Ahora puede ver que primero se muestra la palabra desde el archivo2.sh y luego el mensaje de función "helo1 ()" que es "esperar" y luego el mensaje de función helo (). Como hemos usado "salida 1", el control no se da a eso, por lo que no hay ningún papel de "set -e" nuevamente. Si la llamada de función no se maneja, debe haber un error que prevalecer.

Ejemplo 4

Este ejemplo contiene una comprensión completa de "set -e". Tome cuatro funciones en este ejemplo. Como sabemos, el set -e integrado se usa para salir del código cuando no tiene estado cero. En este ejemplo, hemos usado "0" para una sola función que es la primera. Todas las demás funciones regresan 1. Esto significa que el código saldrá de ejecución después de que se muestre la primera función. Pero no lo hará. Aquí, hemos usado "set +e", que es lo opuesto a "set -e". Cada vez que "set -e" obligaba al código a terminar la ejecución, el opuesto se opondrá cada vez que encuentre el valor distinto de cero. "Set +E" se declara antes de la llamada de función de las dos primeras funciones y "set -e" antes de la llamada de función de los dos últimos métodos.

Establecer +E

Ahora, las primeras dos funciones se ejecutarán. En la segunda función, como es un valor distinto de cero, el compilador forzará a lanzar un error pero "set +e" neutralizará el valor. Cuando es el momento de la tercera función, los mensajes serán mostrados por ECHO, pero cuando el control va al valor "return 1", el código se detendrá. Como aquí, no usamos "set +e". Es por eso que la cuarta función no se ejecuta aquí.

Ejecutar el código en el terminal para que vea el valor resultante.

Conclusión

Este tutorial muestra el funcionamiento de "set -e". En los ejemplos, así es como se usa para terminar la ejecución. Sin embargo, el oponente "set +e" también se utiliza aquí para ilustrar el trabajo.