Сеанс SSH не завершается командой cpp reboot

Предполагая, что диапазоны file2 не перекрываются, как в вашем примере:

$ cat tst.awk
NF==3 { beg=$2; end=$3; all=$0; next }
{ print $2, ( ($2 >= beg) && ($2 <= end) ? all : "out of range" ) }

$ sort -sk2n file2 file1 | awk -f tst.awk
69509 chr1 69091 70005
69511 chr1 69091 70005
71000 out of range
358112 chr1 358070 358183
586874 chr1 586842 586955
744200 chr1 744195 744343

Он использует сортировку GNU для-s(«стабильной сортировки» ), чтобы гарантировать, что запись file2 печатается перед записью file1в случае идентичных $2s.

0
01.09.2021, 14:51
2 ответа

Решение заключается в использовании kill(1, SIGINT)вместо reboot(RB_AUTOBOOT)

.

Подробнее вhttps://stackoverflow.com/a/69042761/6729765

0
03.09.2021, 13:35

Вы должны усвоить разницу между «перезагрузкой ядра» и «перезагрузкой ОС»:

Перезагрузка ядра, скорее всего, просто очищает буферы диска, а затем перезагружается, в то время как перезагрузка ОС будет (пытаться )завершить все процессы.

Когда Sshd будет уничтожен, он будет активно завершать все существующие соединения, поэтому клиент будет проинформирован. Если другая сторона (сервер )просто сбрасывается, клиентская сторона не заметит (хорошо, PuTTY, кажется, заметит вскоре после нажатия любой клавиши (, которая не может быть доставлена ​​)).

0
06.09.2021, 23:42

Теги

Похожие вопросы