группа процессов уничтожения с SIGINT и SIGTERM показывает другой результат

(Я изменил вопрос на более простой симптом.) Я создал дочерний и внучатый дочерние элементы в сценарии bash (в Ubuntu 14.04).

#! /bin/bash

{
    sleep 21 &
    sleep 22
}&

sleep 23

Но 2 типа команды для уничтожения группы процессов показывают разные результаты. (В этом тесте я запускал команду kill в другом терминале.)

kill -INT -<pgid>     # -> grand child(sleep 21) survives.
kill -TERM -<pgid>    # -> kills all correctly.

Не могли бы вы объяснить, что происходит внутри?


person swj    schedule 06.07.2018    source источник
comment
Я вижу, что ваши последние правки — это попытка воскресить это для повторного открытия, но я не думаю, что это еще достаточно ясно. Возможно, я смогу отредактировать его и снова открыть, если вы поясните, что вы имеете в виду под политикой WCE. Быстрое гугление не дает мне ничего даже отдаленно многообещающего.   -  person tripleee    schedule 07.07.2018
comment
Я сослался на WCE и Ctrl+C   -  person swj    schedule 09.07.2018
comment
Я нашел ответ из Google. эта страница хорошо объясняет это. Благодарю.   -  person swj    schedule 09.07.2018