获取系统

问题描述:

我使用下面的方法来获取与ffmpeg的视频的时候不知道是什么原因,能不能把我的输出命令的获取系统

command =~ /Duration: ([\d][\d]):([\d][\d]):([\d][\d]).([\d]+)/ 

变量的时间,然后产值插入 有人可以帮忙吗?

def get_time_video 

    command = system " ffmpeg -i video.flv 2>&1 " 
    command =~ /Duration: ([\d][\d]):([\d][\d]):([\d][\d]).([\d]+)/ 
    time = " #{$1}:#{$2}:#{$3} " 
    puts time # 00:00:30 
    update_attribute(:time, “#{time}”) 

end 
+0

请用'代码'格式(文本字段上方的“1”和“0”块)将代码包围起来。当你输出时间时,它是否给你正确的答案? – Trevoke 2010-03-05 16:27:37

+0

你为什么不这样做? update_attribute:时间,时间 – Trevoke 2010-03-05 16:39:06

Kernel.system的功能如在Documentation看出返回truefalse。如果你想解析一个命令的输出,你可以使用反码符号:

system = `ffmpeg -i video.flv 2>&1`