在irb
控制台中,这些行按照我的预期执行:
require 'open3'
stdout, stderr, exit_status = Open3.capture3('clang-format < tmp')
puts stdout
puts stderr
puts exit_status
即,命令clang-format < tmp
的输出通过stdout
打印出来;对于stderr
,值为nil
,对于exit_status
,输出为pid 28181 exit 0
。
但是,当我在脚本中执行它们时,stdout
的输出为空,但打印出exit_status
的值。
为什么?有人可以照亮我吗?