Как получить дочерний код выхода PTY.spawn?

Я пытаюсь управлять SSH-подключением к сетевому устройству через модуль PTY с кодом, похожим на этот:

cmd_line = "ssh coltrane@love.supreme.com"
begin
  PTY.spawn(cmd_line) do |r_f,w_f,pid|
  ...
rescue PTY::ChildExited => cended
  ...
end

Весь ввод-вывод работает очень хорошо, но я не знать, как получить статус выхода дочернего процесса.

Например, если соединение разорвано или просто истекло время ожидания, порожденный процесс завершится с кодом ошибки, но этот код, похоже, не возвращается в специальная переменная $? .

5
задан the Tin Man 31 August 2011 в 23:20
поделиться