如果我这样做:
@H_403_2@output = %x{some_script}
…然后我将打印到stdout的东西存储在输出中;但我没有看到它出现在屏幕上.
另一方面,如果我这样做:
@H_403_2@success = system "some_script"…然后我看到输出出现在屏幕上,但我没有将它存储在变量中(成功只保留一个布尔值).
有两种方法可以得到两者吗?我知道我可以这样做:
@H_403_2@output = %x{some_script} puts output但问题是some_script可能是一个非常长时间运行的脚本,在这种情况下,直到整个事情完成后我才会看到任何内容.我更愿意看到它产生的输出,以及它完成时将它全部存储在输出变量中.