在osx上使用xld在命令行中拆分提示音频文件



我正在用xld编写一个用于批量处理音频文件的脚本。我想找到未拆分的专辑,将它们拆分并转换为flac,并带有适当的标签。

find . -name "*.ape" -exec sh -c 'exec xld  "$1" -f flac' _ {} ;

这个命令行正在将音频转换为flac,但我必须添加"flac"-c filename.cue";选项,使其拆分文件。

查找-name"*。猿-exec sh-c'exec echo$1|sed的/.ape/.cue/'_{};

此命令行显示.cue文件的路径

查找-name"*。猿-exec sh-c"exec xld"$1〃-f flac-c$1|sed's/.ape/.cue/'_{};

这个命令行不起作用,xld说他没有找到de cue文件。我认为这只是一个语法问题。

谢谢你的帮助

我没有像平时那样在计算机上测试它,但在bash中,你可以替换如下变量的尾部:

thing="fred.ape"
echo ${thing/%.ape/.cue}
fred.cue

它被称为"参数替换/扩展">,并在这里用例子进行了解释。

因此,基于此,您需要执行bash,类似于以下内容:

find . -name "*.ape" -exec bash -c "xld  "$1" -f flac -c "${1/%.ape/.cue}"' _ {} ;

就我个人而言,我会与GNU并行并行执行所有操作,如下所示:

parallel xld {} -f flac -c {.}.cue ::: *.ape

您可以使用自制程序安装它,使用:

brew install parallel

最新更新