Después de que cada comando sea interpretado por el sistema, se creará un proceso independiente, con un único número de identificación de proceso (PID), para ejecutar el comando. El sistema utiliza el PID para averiguar el estado actual de cada proceso.
Utilice el comando ps para conocer qué procesos se ejecutan actualmente. Además de mostrar el número de identificación del proceso (listado como PID) para cada uno de sus procesos (creado como resultado de un comando que introdujo), ps le mostrará también el terminal desde el que se empezó (TTY), el tiempo de cpu que utilizó hasta ahora (TIME), y el comando que está actuando (COMMAND).
Agregando la opción -l al comando ps se mostrarán distintas informaciones acerca de los procesos actualmente en marcha, incluyendo el estado de cada proceso (listado bajo S). Los códigos utilizados para mostrar esto son los siguientes:
O - El proceso está ejecutándose en un procesador.
S - Durmiendo: el proceso espera a que ocurra un acontecimiento o suceso.
Z - Autómata: el proceso ha terminado y no hay proceso maestro esperando.
T - Rastreado: proceso detenido por una señal porque el proceso maestro lo está rastreando.
Observe que mientras se procesa ps, las cosas pueden cambiar. Ya que el comando ps le ofrece sólo una foto de lo que está ocurriendo, es la situación un segundo después de escribir el comando. La información puede no estar en concordancia con el momento en que la ve.
El comando ps(1) tiene más opciones que las explicadas aquí. Consulte man Pages(1): User Commands.
El comando kill le ofrece una forma directa de parar el procesamiento de los comandos que ya no quiere. Esto es particularmente útil si se equivocó al escribir un comando que tarda mucho tiempo en ejecutarse.
Para terminar un proceso:
Escriba ps para averiguar el PID(s) del proceso(s).
Escriba kill seguido del PID(s).
El ejemplo siguiente ilustra este procedimiento:
$ ps PID TTY TIME COMMAND 1291 co 0:12 -bin/csh (csh) 3250 p0 0:00 ps 1286 p1 0:05 -bin/csh (csh) 3248 p1 0:05 vi commands $ kill 1291 [1} Terminated -bin/csh/ (csh) $ |
Observe que una forma más rápida de determinar el PID correcto es enviar la salida de ps por el canal de comunicación hacia grep como se ve a continuación:
$ ps | grep nombre_de_comando |
donde nombre_de_comando es el nombre del proceso del comando que quiere parar.
Si necesita forzar la terminación de un proceso, puede utilizar la opción -9 del comando ps tal como se muestra a continuación:
$ kill -9 PID# |
donde PID# es el número de identificación del proceso que quiere parar.