我正在尝试围绕 Lame 编写一个简单的脚本,以针对我的特定用途自定义程序。我想做的只是从 Lame 输出中解析出完整性百分比。
这是这条线现在的样子:
./lame --nohist ~/Desktop/Driver.wav ~/Desktop/Driver.mp3 2>&1| egrep -o "\([0-9\%]+\)"
但这没有任何回报。下面是 Lame 的输出:
LAME 3.99 (alpha 1, Jun 4 2009 19:42:31) 32bits (http://www.mp3dev.org/) 警告:alpha 版本应仅用于测试 使用多相低通滤波器,过渡带:16538 Hz - 17071 Hz 编码 /Users/jkubicek/Desktop/Driver.wav 到 /Users/jkubicek/Desktop/Driver.mp3 编码为 44.1 kHz j-立体声 MPEG-1 Layer III (11x) 128 kbps qval=3 框架 | CPU 时间/估计 | 实时/估计 | 播放/CPU | 预计到达时间 1500/8765 (17%)| 0:02/ 0:15| 0:03/ 0:17| 14.654x| 0:14
最后一行代码随着文件的转换而动态更新。当我将这个确切的文本复制/粘贴/回显/管道到我的 grep 中时,它发现 17% 就好了,但是当我真正运行它时,它发现了 zilch。
编辑:当我将 lame 的输出放入文本文件时,结果如下所示:
看起来我可以将输出推送到一个临时文件并从那里读取完成的百分比,但这感觉很尴尬,就像应该有一种更优雅的方式来做到这一点。