在shell脚本中无缓冲解析mplayer输出

时间:2014-01-11 16:47:50

标签: bash pipe stdout mplayer unbuffered

尝试使用stdbufunbuffer的几个变体来解析shell脚本中的mplayer(在我的情况下也是libdvdnav)输出后,我没有找到工作方案。这是我的shell脚本,没有解析输出的部分 - 它只是在每一行上运行echo。

#!/bin/bash
IN=video.iso
OUT=video.mpg

IFS=$'\n'
for line in `stdbuf -oL -eL mplayer -msglevel identify=6 -dumpstream -dumpfile $OUT dvdnav://1/$IN 2>&1`; do
    echo "mplayer: $line"
done

即使使用stdbuf,输出也会被缓冲,因此我无法实时解析每一行。有没有办法在使用mplayer目标时捕获dvdnav输出?

0 个答案:

没有答案