Как вырваться из программы в бесконечном цикле?

101856
trinity

При запуске программы, которая входит в бесконечный цикл в терминале, как мне вернуть командную строку?

(Я использую Fedora Core 5)

2
Fedora 5? Как в "пятерке" ??? balpha 14 лет назад 0

8 ответов на вопрос

10
Victor Nicollet

Вы можете отправить SIGHUP (Ctrl-Z) или SIGTERM (Ctrl-C). Первый просто приостанавливает программу, которую вы можете возобновить fg(или возобновить как фоновый процесс, используя bg).

Если Ctrl-C не работает, вы можете попробовать менее известный Ctrl- \, который отправляет SIGQUIT. a3nm 8 лет назад 1
3
Tom Wijsman

Вам придется убить программу, используя Ctrl+, Cгде C означает «Отмена».

1
Thilo

Либо Ctrl-C, как упомянуто, либо, если это не сработает, откройте другой терминал, найдите процесс с помощью ps -ef | grep, найдите идентификатор процесса (pid) и используйте команду kill: kill -9

0
Justin Niessner

Вы можете нажать Ctrl+ C.

0
Emil Ivanov

Запустите программу &в конце, чтобы запустить ее в фоновом режиме. Обратите внимание, что если вы выйдете из терминала, приложение может / остановится также.

root@root:~$ run_app with params & 

Использование Ctrl+Cубьет его, если вы забыли &.

0
Ignacio Vazquez-Abrams

Невозможно доказать, что любая произвольная программа когда-либо завершится без фактического запуска до конца.

Сказав это, можно настроить сторожевой таймер, например, через D-Bus, который может убить программу, если ответ не получен в течение заданного периода времени.

0
dicroce

Как уже упоминалось, вы можете просто добавить & в командной строке. Вы также можете нажать CTRL-Z (это переводит процесс в состояние Stopped), а затем набрать bg, чтобы снова запустить его в фоновом режиме ...

-1
bonzi

Вы можете нажать Ctrl + Z типа: PS UX, чтобы увидеть запущенный процесс, если есть тот, который вы хотите убить

введите: kill -9 processId, где id процесса - это идентификатор процесса цикла

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