Две выгрузки пишут отчёты, и обе нужно остановить. Коллега всегда останавливает процессы командой kill -9, ты попробуешь обычный kill. Сравни, что останется в отчётах.
kill и kill -9
В каталоге ~/signal-lab выполни пять команд по порядку: запусти выгрузку a и останови её обычным kill, запусти выгрузку b и останови её kill -9, потом прочитай оба отчёта. $! — PID последней фоновой команды.
Сначала предположи
Обе выгрузки остановлены. Что окажется в a.txt и b.txt?
Теперь начни упражнение, выполни команду и сверь прогноз с выводом.
Почему в b.txt нет строки saved?
-
killс файлами не работает, он посылает сигнал процессу. Строку saved выгрузка b просто не записала. -
Начать она успела:
cat b.txtпечатает started, его выгрузка пишет при запуске. Не записался конец. -
Строку started выгрузка b в файл записала, значит, писать в него можно.
kill -9 остановил выгрузку b сразу, и строку saved она дописать не успела.