Bir alt işlemin çıktısını RubyRuby'de alt işlemin akış çıkışı
örn.
p `ping google.com`
Hemen ping yanıtlarını görmek istiyorum; İşlemin tamamlanmasını beklemek istemiyorum.
Bir alt işlemin çıktısını RubyRuby'de alt işlemin akış çıkışı
örn.
p `ping google.com`
Hemen ping yanıtlarını görmek istiyorum; İşlemin tamamlanmasını beklemek istemiyorum.
Sen IO#popen kullanmalıdır:
IO.popen('ping google.com') do |io|
io.each { |s| print s }
end
: Cheers
IO.popen("ping -c 3 google.com") do |data|
while line = data.gets
puts line
end
end
yerine komutu ters tırnak kullanarak aşağıdaki yapabilirsiniz!
hem stdout
ve yakalamak isterseniz stderr
sen popen2e
kullanabilirsiniz:
require 'open3'
Open3.popen2e('do something') do |_stdin, stdout_err, _wait_thr|
stdout_err.each { |line| puts line }
end
Neden downvote? Bu geçerli, geçerli bir soruya benziyor. – coreyward