结束 ssh 隧道的正确方法

结束 ssh 隧道的正确方法

我经常需要连接到 AWS 上的数据库实例,因此我使用 SSH 隧道。我可以使用以下命令创建一个:

ssh -N -L 12345:some-database.rds.amazonaws.com:5432 [email protected]

这很好用。但是,当我想断开连接时,我唯一的选择似乎是CTRL+ Z,结果如下:

^Z[1]  + 12656 suspended

如果我再次尝试使用端口 12345,它会说它已被使用。我必须使用以下命令终止暂停的进程:

lsof -t -i:12345 | xargs kill -9

这似乎很麻烦。当我使用完 SSH 隧道后,有没有更方便的方法可以正确关闭它?谢谢!

答案1

谢谢您的帮助!我明白了这一点,这主要是因为我太笨了。

CTRL上面评论我为什么不使用+C而使用CTRL+ 的人Z说对了。答案基本上是“我试过了,什么也没发生”。

我只是觉得 ssh 不支持这个,但我决定再深入一点。好吧,为什么什么都没发生?

答案是因为我使用的是扭曲终端,并且CTRL+已C绑定到“复制”命令,因为我经常使用 Windows 和 Linux,并且比 MacOS Cmd+更喜欢这个C。这似乎阻止了默认^C处理程序。

我决定将 Warp 中的默认键盘快捷键改回,问题就解决了。

相关内容