“Conocimiento Sistemas>unix

¿Para qué sirve el comando de trampa?

2015/1/10
El comando `TRAP` en UNIX se usa para señales de manejo , que son eventos asincrónicos que pueden interrumpir un proceso de ejecución. Las señales se utilizan para notificar un proceso de varios eventos, como:

* Señales de terminación: Estas señales se envían a un proceso para terminarlo, por ejemplo, `Sigint` (interrupción) o 'Sigterter` (terminado).

* Señales de error: Estas señales se envían a un proceso para indicar un error, por ejemplo, `SIGSEGV` (violación de la segmentación).

* Otras señales: Hay varias otras señales, como `Sigusr1` y` Sigusr2`, que pueden usarse para fines personalizados.

Cómo funciona `Trap`

El comando `Trap` le permite especificar qué acciones deben tomarse cuando un proceso recibe una señal particular. Tiene la siguiente sintaxis:

`` `Bash

Señal de 'comando' de trampa

`` `` ``

* `Command` :Este es el comando o la secuencia de comandos que se ejecutarán cuando se reciba la señal especificada.

* `señal` :Este es el número o nombre de señal que desea atrapar.

Ejemplos

1. Manejo `Sigint` (interrupción):

`` `Bash

trampa 'echo "interrumpido! Saliendo ..."; Salir 'int

`` `` ``

Esto imprimirá el mensaje "Interrupted! Saliendo ..." y luego saldrá del script cuando se presione `Ctrl+C` (que envía la señal` Sigint`).

2. Ignorando `Sigquit` (dejar):

`` `Bash

trampa '' renunciar

`` `` ``

Esto ignorará la señal `Sigquit` (típicamente enviada por` Ctrl+\ `) y evitará que termine el script.

3. Ejecutando un script de limpieza:

`` `Bash

TRAP 'Cleanup.sh' Salida

`` `` ``

Esto ejecutará el script `Cleanup.SH` cuando el proceso salga, independientemente del motivo de la terminación.

Notas importantes:

* El comando `Trap` solo afecta el proceso de shell actual.

* Si desea manejar señales en un proceso infantil, debe usar 'trampa' dentro de ese proceso infantil.

* Puede usar la opción `-L` con` trampa` para enumerar todas las señales disponibles.

En resumen, `Trap` proporciona un poderoso mecanismo para manejar señales y controlar el comportamiento de sus scripts Unix en respuesta a varios eventos.

unix
GREP Tutorial para Unix
¿Qué significa doble columna?
¿Cuál es el significado y cuándo se usó?
¿Cuáles son las funciones del sistema operativo Unix
¿Con qué comandos muestra nombres y procesos de archivos en UNIX?
¿Cómo se ejecuta un trabajo periódicamente en el sistema Unix?
¿Cuáles son los dos tipos de mando?
¿Cuándo se crearon los servicios del sistema Unix?
Conocimiento de la computadora © http://www.ordenador.online