Ctrl-C и Ctrl-Z не работают в терминале

5

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

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

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

Easton
источник
В настройках терминала есть настройка - & gt; Профили - & gt; Оболочка называется «Когда оболочка выходит:» и дает вам возможность закрыть или не закрыть окно терминала.
Marvo

Ответы:

3

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

 <program>; exit;

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

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

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

Hawken
источник
Есть ли источник, который говорит, что он на самом деле выполняет эти две команды?
Pacerier
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, что я могу проверить).

Rich Homolka
источник
0

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

ggustafsson
источник
0

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

За Ctrl + Z использование команда + Z для UnDo и сдвиг + команда + Z для пере.

Обратитесь к справке терминала & gt; Горячие клавиши

Surya Kameswara Rao Ravi
источник
-1

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

HackToHell
источник
Нет, я не пытаюсь скопировать командное окно, я пытаюсь остановить процесс, чтобы я мог составить карту сетей. Я новичок во всем этом, так что, в принципе, я могу не использовать правильную терминологию, но мне трудно вывести изображение из результатов пинга.
Easton
@Easton Я отредактировал свой ответ, попробуйте
HackToHell