Есть ли & ldquo; Super & rdquo; сломать ключ для Баш?

При использовании терминала иногда нужно ломать программу. Иногда вы нажимаете Ctrl - c , иногда Ctrl - x , а иногда Ctrl - < kbd> z

В некоторых случаях это может быть просто закрытие кавычки или несколько раз нажатие клавиши ввода, даже есть случаи, когда Ctrl - d будет работать.

Поэтому, когда я застреваю, как идиот, я начинаю толкать эти ключи, как идиот, в надежде, что процесс закончится. В 95% случаев это работает, и когда я в отчаянии, я просто закрываю терминал, и это работает 100% времени. Я уверен, что есть логическая причина для различных состояний, потому что программа находится в определенном состоянии, но все, что я хочу сделать, это просто сломать приложение и вернуться к приглашению bash.

Есть ли супер-ключ, который прервет процесс без необходимости смешивать эти 4 магических ключа в надежде, что приложение будет закрыто?

3
задан 4 April 2013 в 09:48

1 ответ

Суперключ - это , закрывающий терминал. :-) Это или кнопка включения на вашем компьютере.

Каждая из комбинаций клавиш Ctrl + c , Ctrl + x , Ctrl + z и Ctrl + d делают другое.

  • Ctrl + c : генерирует сигнал прерывания (SIGINT).

  • Ctrl + x : я не уверен, что это делает.

  • Ctrl + z : приостановить процесс, позволяя возобновить его на более позднем этапе (SIGSTOP).

  • Ctrl + d : отправляет символ конца файла (EOF).

Каждый процесс может интерпретировать эти сигналы так, как они считают нужным. Следовательно, существует некоторая неоднородность в ответе.

Более общим способом завершения процесса было бы уничтожение его сигналом SIGKILL, наиболее агрессивный способ, который заключается в том, что (я думаю) такое же, как закрытие окна терминала. Хотя лучше сначала попробовать Ctrl + d и Ctrl + c , потому что это сигналы, которые процесс может предвидеть, что позволит ему закончиться предсказуемым и более безопасным способом.

Проверьте страницу руководства с помощью man 7 signal.

0
ответ дан 4 April 2013 в 09:48

Другие вопросы по тегам:

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