Ctrl-C 和 Ctrl-Z 在终端中不起作用

Ctrl-C 和 Ctrl-Z 在终端中不起作用

我在我的 Mac 上设置了一个虚拟渗透测试实验室。

当我使用 lanmap2 时,每次我尝试用Ctrl+停止它Z时,它只会输入^Z,但如果我输入Ctrl+ C,整个终端窗口就会关闭。

是否有任何命令可以用来停止该过程,而不是使用键盘快捷键?

答案1

如果您使用的是 MAC 键盘,Command+dot/period应该相当于Ctrl+C表示中断。

对于Ctrl+,Z使用Command+Z表示 UnDo,使用Shift+ Command+Z表示 ReDo。

请参阅终端帮助 > 键盘快捷键

答案2

我会在终端中尝试stty -a,看看你的 cchars 映射到了什么。确保 susp(暂停)映射到 Ctrl-Z(^Z),intr(中断)映射到 ^C。

您是否正在运行任何可能“窃取”按键的程序?也许somecoolapp使用 Ctrl-Z 将斑马 Twitpic 发送到某个地方。

请记住,如果窗口下的所有进程都消失了,Ctrl-C 将关闭窗口。我不知道您如何运行应用程序,但如果它使用 exec 替换 bash,那么“Ctrl-C 关闭窗口”就更有意义了。Ctrl-C 关闭前台应用程序(唯一正在运行的应用程序),从而关闭窗口。

要暂停进程,您可以使用另一个终端窗口发送信号。使用活动监视器或命令查找进程 ID ps,然后在另一个窗口中键入kill -STOP <processid>。不幸的是,活动监视器似乎不允许您发送任何信号,并且 SIGSTOP 和 SIGCONT 不在列表中(至少在 Snow Leopard 上是这样,这是我可以检查的)。

答案3

你如何启动该程序?如果你双击,你实际上正在运行两个命令

 <program>; exit;

程序执行后这将关闭窗口。

如果是这种情况,请尝试lanmap2在新终端窗口中启动或任何程序。这样ctrl+c只会关闭程序而不会关闭窗口。

至于ctrl+,z我还没有发现任何可以阻止其工作的东西。

答案4

也许您想要的是Ctrl+S?暂时停止正在运行的程序的输出。Ctrl+Z暂停程序,以便您可以返回到 shell 并执行某些操作,然后使用命令再次返回到程序fg

相关内容