У меня есть рубиновый скрипт на удаленном сервере, который я запускаю через Net: SSH на моем локальном компьютере.Make Net: обновление SSH возвратило пакеты данных/куски в блоке exec чаще
Удаленный сценарий занимает несколько минут для запуска и выводит его прогресс в стандартный вывод.
Проблема в том, что блок в моей команде exec только вызывается, когда пакет/блок заполнен.
Таким образом, я получаю прогресс всего за один удар каждую минуту.
Вот некоторые вырубленные примеры, которые иллюстрируют мою проблему:
Сервер сценариев:
(0.999).each do |i|
puts i
sleep 1
end
puts 1000
Local Script:
Net::SSH.start('ip.v.4.addr', 'user', :keys => ['my_key']) do |ssh|
ssh.exec("ruby count_to_1000.rb") do |ch, stream, data|
puts data if stream == :stdout
end
ssh.loop(1)
end
Есть ли способ, с пульта дистанционного управления сценарий для принудительной отправки пакета/куска?
Или есть способ установить предел, скажем, второй (или n бит), прежде чем он покраснеть? (в пределах сети: SSH)
Спасибо за вашу помощь!
'STDOUT.flush' заставлял все работать, как будто я очень хотел благодарности!По мере того, как вы отправляли сначала, включали рабочий пример и ссылку на документы, зеленый галочка - ваш. Еще раз спасибо! – complistic