A veces, cuando estoy dirigiendo un killall
comando desde la Terminal, un compañero de trabajo sugeriría o editaría mis scripts para mostrar killall -HUP
.
¿Qué hace el -HUP
parte hacer?
A veces, cuando estoy dirigiendo un killall
comando desde la Terminal, un compañero de trabajo sugeriría o editaría mis scripts para mostrar killall -HUP
.
¿Qué hace el -HUP
parte hacer?
El -HUP
es la señal que se envía a los procesos por el killall
comando. Puede ser un poco difícil de decir, pero la entrada relevante en el killall
manual es:
-SIGNAL Send a different signal instead of the default TERM. The signal may be specified
either as a name (with or without a leading SIG), or numerically.
La diferencia entre el TERM
señal que killall
envía y el HUP
depende en gran medida del programa al que se envía la señal. Al final del programa, reciben un valor de señal de interrupción diferente. Así, el programa puede captar las interrupciones y decidir, basándose en el valor, si debe hacer una cosa u otra.
El TERM
(históricamente la "señal de terminación") suele enviarse a un programa para solicitar su terminación (que es una versión más amable de forzando su terminación con el KILL
señal). El programa es libre de coger e ignorar la TERM
señal. No tiene que terminar si no quiere y puede ignorar completamente esta señal.
El HUP
(históricamente la "señal de colgado") se suele enviar a un programa para solicitar que se reinicie y vuelva a leer toda su configuración en el proceso. El comportamiento real del programa depende de la implementación específica del programa. No todos los programas captan HUP
y no están obligados a hacerlo por convención o dogma. Por ejemplo, el servidor web Apache atrapará un HUP
y relee todos sus archivos de configuración pero no reinicia ningún proceso.
Si quieres terminar realmente los procesos y no preocuparte de si van a captar y obedecer la señal utiliza el KILL
señal. No puede ser capturado o ignorado y resulta en la terminación del proceso.
Para una buena revisión de las señales POSIX disponibles ver este artículo de Wikipedia .
El -HUP
es la señal de "cuelgue" que puede hacer que una aplicación se detenga, lea su archivo de configuración y vuelva a empezar. No es necesariamente mejor que usarla sin ella.
killall Finder
y
killall -HUP Finder
Son respetuosamente lo mismo. En OS X Finder se relanza, pero vuelve a leer su archivo de configuración. Esto podría no ser realmente el caso si la aplicación que se está ejecutando no tiene el -HUP
función incorporada en él. Como el cartel anterior mencionó Apache. Lee sus archivos de configuración, pero no puede volver a lanzarse.
AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.