我正在接受信号
rescue Interrupt => e
但它始终打印:
^CShutting down!
有没有办法防止默认的CTRL + C输出:
^C
有任何想法吗?
一些终端支持stty -echoctl
禁用控制字符的回显:
`stty -echoctl`
begin
loop do
# ...
end
rescue Interrupt => e
puts 'shutting down'
end
如果上述方法不起作用,您可以通过将IO#echo=
设置为false
来禁用所有回显:
require 'io/console'
STDIN.echo = false
begin
loop do
# ...
end
rescue Interrupt => e
puts 'shutting down'
end