我一直在寻找答案,但到目前为止没有发现任何答案。我目前正在登录我的Ubuntu服务器,并且在运行进程时无法在其上运行任何中断。这是我的姿势-a:
user@Ubuntu1:~$ stty -a
speed 38400 baud; rows 93; columns 200; line = 0;
intr = ^C; quit = ^\; erase = ^?; kill = ^U; eof = ^D; eol = M-^?; eol2 = M-^?;
swtch = <undef>; start = ^Q; stop = ^S; susp = ^Z; rprnt = ^R; werase = ^W; lnext = ^V;
flush = ^O; min = 1; time = 0;
我的.bashrc中没有任何可更改中断的内容。
这对于包括root在内的所有用户都是相同的。我还尝试过使用不同的终端从不同位置登录,并且每次出现相同结果时都尝试过。我已经使用ssh和ssh -X登录了。
编辑:在本地我所有的中断工作正常。
更新:我还在寻找答案。我的朋友有完全一样的问题。问题似乎非常严重,是当从PC,Mac,Linux登录时,键盘没有拾取这些键(即使映射正确)。
Ctrl+C
在运行其他进程(例如cat
)时尝试点击?也许是那个过程被忽略了Ctrl+C
。还是您的意思是在Ubuntu服务器本地,该特定进程会响应Ctrl+C
,在这种情况下,您尝试在哪个终端上运行?那screen
会议呢?
kill -s 2
(注意-s 2
,这就是SIGINT
(当你按下Ctrl + C键,默认为,通常列发出的信号kill
是SIGTERM
)),则该命令不忽略中断。还有其他东西正在捡起它。当您在本地运行该程序并且可以正常工作时,您是说它可以使用客户端计算机中的同一终端在本地运行某些程序,或者在服务器计算机中本地运行终端模拟器吗?我想知道您是否正在使用一些试图从Windows世界模仿Ctrl + C的模拟器...
Ctrl+V
和hit 的输出是Ctrl+C
什么?您是否尝试过终止进程kill -s 2 <pid_of_process>
?这应等于将SIGINT信号发送到该进程。检查您的终端仿真器密钥设置。