{"title":"Ruby\u3067\u5225\u306e\u30b3\u30de\u30f3\u30c9\u3092\u30e9\u30c3\u30d7\u3057\u305f\u3044\u6642\u3001pty\u30e9\u30a4\u30d6\u30e9\u30ea\u304c\u4fbf\u5229","image_url":null,"type":"rich","width":"100%","blog_url":"https://udzura.hatenablog.jp/","author_name":"udzura","blog_title":"\u30ed\u30fc\u30d5\u30a1\u30a4\u65e5\u8a18","categories":[],"author_url":"https://blog.hatena.ne.jp/udzura/","published":"2015-08-07 10:45:00","height":"190","provider_url":"https://hatena.blog","version":"1.0","description":"library pty (Ruby 2.2.0)pty \u3068\u306f\u3001\u64ec\u4f3c\u7aef\u672b\uff08Pseudo tTY\uff09\u3092\u6271\u3046\u30e9\u30a4\u30d6\u30e9\u30ea\u3002\u5178\u578b\u7684\u306b\u306f\u4ee5\u4e0b\u306e\u3088\u3046\u306b\u4f7f\u3046\u3002 require 'pty' status = nil PTY.spawn(\"for i in $(seq 1 10); do echo progress $i; sleep 1; done\") do |pty_out, pty_in, pid| pty_in.close while l = pty_out.gets puts \"PTY: #{l}\" end status = PTY.check pid end # PTY: progress 1 # PT\u2026","provider_name":"Hatena Blog","url":"https://udzura.hatenablog.jp/entry/2015/08/07/104500","html":"<iframe src=\"https://hatenablog-parts.com/embed?url=https%3A%2F%2Fudzura.hatenablog.jp%2Fentry%2F2015%2F08%2F07%2F104500\" title=\"Ruby\u3067\u5225\u306e\u30b3\u30de\u30f3\u30c9\u3092\u30e9\u30c3\u30d7\u3057\u305f\u3044\u6642\u3001pty\u30e9\u30a4\u30d6\u30e9\u30ea\u304c\u4fbf\u5229 - \u30ed\u30fc\u30d5\u30a1\u30a4\u65e5\u8a18\" class=\"embed-card embed-blogcard\" scrolling=\"no\" frameborder=\"0\" style=\"display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;\"></iframe>"}