He visto el siguiente comando:
$ kill %1
¿Cuál es el uso de esta declaración?
Respuesta1
Brevemente,
significa matartrabajonúmero 1, noprocesonúmero uno.
Los trabajos se pueden enumerar con el jobs
comando.
En términos más generales, se relaciona con cualquier shell que esté utilizando y la sintaxis puede diferir de un shell a otro.
Al utilizar el shell bash, un usuario puede tener varios procesos (trabajos) ejecutándose simultáneamente, cuyo proceso principal es el shell que está utilizando. Conceptos básicos del control de trabajos de Google Bash
El comando kill incorporado se utiliza para enviar una señal a una de esas canalizaciones de trabajos. Si no se especifica la señal específica, se utiliza SIGTERM, que normalmente finaliza (termina) el trabajo, de ahí el nombre kill. Pero se puede especificar cualquier señal, algunas de las cuales de alguna manera podrían restablecer el proceso o provocar un comportamiento que no elimine.
Finalmente, %1 es una forma (¡entre muchas!) de especificar a qué trabajo desea enviar la señal. %1 se refiere al trabajo que se encuentra encima de la pila de trabajos en segundo plano.
Respuesta2
Cuando pones en segundo plano un proceso, por ejemplo:
# find / &
[1] ....
# ls -lr /usr &
[2] ....
Ahora, aquí hay dos procesos ejecutándose en segundo plano y conectados al terminal actual. Si lo haces: mata a %1
el primer comando 'buscar' anterior será terminado. Según lo dicho por Anders, puedes enumerar los procesos en segundo plano que se están ejecutando actualmente en la terminal y eliminarlos:
# jobs
[1] find / ...
[2] ls -lr ...
# kill %1