我正在尝试通过PTY模块管理到网络设备的SSH连接,代码类似于:
cmd_line = "ssh coltrane@love.supreme.com"
begin
PTY.spawn(cmd_line) do |r_f,w_f,pid|
...
rescue PTY::ChildExited => cended
...
end
Run Code Online (Sandbox Code Playgroud)
整个I/O工作得很好,但是我不知道如何获得子进程的退出状态.
例如,如果连接断开或只是超时,则生成的进程将以错误代码终止,但此代码似乎不会在$?特殊变量中返回.