5

Я установил виртуальную лабораторию на своем Mac.

Когда я использую lanmap2, каждый раз, когда я пытаюсь остановить его с помощью Ctrl+Z, он просто набирает ^Z , но если я нажимаю Ctrl+C , все окно терминала закрывается.

Есть ли какие-либо команды, которые я могу использовать, чтобы остановить процесс вместо использования сочетания клавиш?

5 ответов5

3

Как вы запускаете программу? Если вы дважды щелкнете, вы на самом деле запускаете две команды

 <program>; exit;

Это закроет окно после выполнения программы.

Если это так, попробуйте запустить lanmap2 или любую другую программу в новом окне терминала. Таким образом, ctrl + c закроет только программу, а не окно.

Что касается ctrl + z я еще не нашел ничего, что могло бы помешать этому.

3

Я бы попробовал stty -a в Терминале, посмотреть, на что нанесены ваши символы. Убедитесь, что susp (suspend) сопоставлен с Ctrl-Z (^ Z) и intr (interrupt) с ^ C.

У вас есть какие-нибудь программы, которые могут «украсть» нажатие клавиши? Может быть, somecoolapp использует Ctrl-Z, чтобы отправить зебру Twitpic куда-нибудь.

Помните, что Ctrl-C закроет ваше окно, если все процессы под ним исчезнут. Я не знаю, как вы запускаете ваше приложение, но если оно заменяет bash с помощью exec, то «Ctrl-C закрывает окно» имеет больше смысла. Ctrl-C закрывает приложение переднего плана, которое является единственным запущенным приложением, которое закрывает окно.

Чтобы приостановить процесс, вы можете использовать другое окно терминала для отправки сигнала. Найдите идентификатор процесса с помощью Activity Monitor или команды ps , а в другом окне введите kill -STOP <processid> . К сожалению, Activity Monitor, похоже, не позволяет отправлять какой-либо сигнал, а SIGSTOP и SIGCONT отсутствуют в списке (по крайней мере, для Snow Leopard, что я и могу проверить).

0

Если вы используете клавиатуру MAC, Command+точка / точка должны быть эквивалентны Ctrl+C для разрыва.

Для Ctrl+Z используйте Ctrl+Z для UnDo и Shift+Command+Z для ReDo.

Обратитесь к Справке терминала> Сочетания клавиш

0

Может быть, то, что вы хотите, это Ctrl+S? Это временно останавливает вывод работающей программы. Ctrl+Z приостанавливает работу программы, чтобы вы могли вернуться в оболочку и что-то сделать, а затем снова вернуться в программу с помощью команды fg .

-1

В новом терминале используйте команду killall .

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .