sam local invoke -d调试会话在命令行中无法正常退出如何解决
SAM本地调试会话无法通过Ctrl+C退出的解决方法
这是SAM CLI启动调试监听模式后的普遍正常行为:使用sam local invoke 'functionName' -d 5858命令指定调试端口后,进程会进入等待调试器挂载状态,默认屏蔽Ctrl+C触发的SIGINT中断信号,因此常规退出操作无效,无需启动VSCode调试器即可通过以下方法终止会话:
方法1:终止指定端口绑定进程(全平台通用)
直接杀掉占用调试端口(示例为5858)的进程即可终止卡住的调试会话:
- Linux/macOS 终端执行单行命令:
lsof -ti:5858 | xargs kill -9 - Windows CMD 分两步执行:
- 查找端口对应进程PID:
输出结果最后一列即为对应进程PID,假设为1234netstat -ano | findstr :5858 - 强制终止进程:
taskkill /PID 1234 /F
- 查找端口对应进程PID:
- Windows PowerShell 执行单行命令:
Stop-Process -Id (Get-NetTCPConnection -LocalPort 5858).OwningProcess -Force
方法2:终端强制中断快捷键
无需额外输入命令,直接在运行sam命令的终端窗口按下对应组合键即可:
- Linux/macOS:按
Ctrl+\发送优先级更高的SIGQUIT信号,直接终止进程 - Windows CMD:按
Ctrl+Break触发强制中断,无Break键的设备可尝试Ctrl+Fn+B组合键
内容的提问来源于stack exchange,提问作者MuzaffarShaikh
相关产品推荐
相关产品推荐

