对红宝石来说是新手。 我有一个终端命令来执行一些进程并将结果输出为xml文件。(它通过终端正常工作)
cmd = '"C:\Program Files\shark\hark" -f "ains 02:04" -eT xml > test12.xml'
我需要使用ruby代码执行此命令。
但是当我尝试使用ruby代码时,它会输出xml文件,其内容将为零。如果我使用CTRL + C
退出终端,我将获取xml文件中的完整数据
为了退出子进程,我试图杀死进程并从任务列表中杀死ruby.exe。但是在xml文件中没有任何好处。内容仍为零
码
def execute
cmd = '"C:\Program Files\shark\hark" -f "ains 02:04" -eT xml > test12.xml'
@pid = Process.spawn(cmd)
sleep(100)
exec( 'Taskkill /F /IM ruby.exe' )
end
execute
我的代码有什么不对。
答案 0 :(得分:0)
我认为Process.wait
不支持流重定向。换句话说,|
,>
,>>
和<
不起作用。