En el man page, dice:
0 All processes in the current process group are signaled
Y lo intenté así:
$ man kill &
[1] 15247
$
[1]+ Stopped man kill
$ kill 0
$ ps
15247 pts/41 00:00:00 man
Como entendí, kill 0matará todos los procesos en el proceso actual, que incluye pid15247. Sin embargo, no hizo nada en este ejemplo. ¿Alguien tiene ideas sobre cómo usarlo?

Respuestas:
No pude encontrar una nota de cómo se
kill 0comporta en mi página de kill man (debian).Pero tengo dos comentarios:
(1) "Grupo de procesos" podría no ser lo que espera. Puede mostrar la ID del grupo de procesos (PGID) con
ps -o "%p %P %r %c %a":Entonces,
manjunto con la herramienta de paginación de visualización (less) está en el mismo grupo de proceso, pero eso es diferente de la del shell (zsh en mi caso).(2) Probablemente hay dos
killcomandos diferentes . Uno integrado enbash(ver bash (1), Sección "SHELL BUILTIN COMMANDS") y el externo/bin/kill. ¡Estos dos pueden comportarse de manera diferente! Puede indicar explícitamente cuál desea ejecutar escribiendobuiltin killo encommand killlugar dekill. El comando externo también puede ejecutar mediante la especificación de la ruta:/bin/kill.fuente
PPIDes la ID del proceso principal , que a menudo es, pero no necesariamente, la ID del grupo de procesos. La columna correcta esPGID, que no aparece en lapssalida predeterminada ; necesita usar la-oopción para construir un formato personalizado que lo incluya.:-()Para detener todos sus procesos y cerrar sesión, ingrese:
Esto envía la señal 9, la señal SIGKILL, a todos los procesos que tienen una ID de grupo de proceso igual a la ID de grupo de proceso de los remitentes. Debido a que el shell no puede ignorar la señal SIGKILL, esto también detiene el shell de inicio de sesión y cierra la sesión
Este es el Manual de AIX de IBM, pero quizás se aplica el concepto.
Esta funcionalidad no existe en Linux "kill" (como puedo ver); pero así es como se comporta "matar":
Matar 0 no es matar al pid 0. En cambio, es una opción en kill para matar todos los procesos en el grupo actual . Con su comando, está eliminando todo en el ID de grupo de proceso (GID) del shell que emitió el comando kill.
fuente