我想从我的Ruby脚本中运行一个程序,但我想分别捕获程序的STDOUT和STDERR,而不是混合它们,因此2>&1在命令shell上执行操作不会对我有用.
我真的不想将这些指向tempfile并将tempfile读回我的脚本.有没有办法可以直接在我的Ruby脚本中获取这两个?
您应该使用Open3类.它提供了执行shell命令的方法,这些命令可以将stdin,stdout和stderr作为单独的IO对象返回.
http://ruby-doc.org/stdlib-1.9.3/libdoc/open3/rdoc/Open3.html#method-c-popen3
| 归档时间: |
|
| 查看次数: |
1567 次 |
| 最近记录: |