Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby 记录shell命令的所有输出_Ruby - Fatal编程技术网

Ruby 记录shell命令的所有输出

Ruby 记录shell命令的所有输出,ruby,Ruby,我正在编写一个ruby脚本,它调用apt-get。我想记录/显示apt get命令的所有输出 Backticks、%x和其他大部分返回最终输出(如果有的话)。 我也看过IO.popen和Open3.popen系列,但是它们在第一条消息之后就停止了日志记录 有没有一种方法可以在shell命令执行时转储所有输出?您可以使用: IO.popen("apt-get install foobar") do |apt| apt.each do |line| puts line end end

我正在编写一个ruby脚本,它调用
apt-get
。我想记录/显示
apt get
命令的所有输出

Backticks、
%x
和其他大部分返回最终输出(如果有的话)。 我也看过IO.popen和Open3.popen系列,但是它们在第一条消息之后就停止了日志记录

有没有一种方法可以在shell命令执行时转储所有输出?

您可以使用:

IO.popen("apt-get install foobar") do |apt|
  apt.each do |line|
    puts line
  end
end

希望这有助于捕获STDERR频道。