如何从音频 CD Bash 终端获取文件列表

如何从音频 CD Bash 终端获取文件列表

多年来我一直使用 VLC 和命令行批处理文件来翻录音频 CD。

我刚刚尝试在 Ubuntu 14.04 中编写类似的 bash 脚本,结果让我很惊讶——我不知道如何获取 CD 上的文件名列表,并将其传递给 VLC Media Player 进行转换。我需要类似的东西:

FILES=/path/to/*.cda
for f in $FILES
do
   echo "Processing $f file..."
   # take action on each file. $f store current file name
   call_my_vlc_function( $f)
done

是否有“技巧”可以在 Ubuntu 中获取音频 CD 上的文件列表以供 bash 脚本使用,或者这根本不可能?我已经阅读了许多关于 gvfs 系统与“真实”文件系统有何不同的文章,但我只是惊讶于 Windows 可以如此轻松地完成一些在 bash 中无法完成的事情。

短暂性脑缺血发作,

---JC

答案1

我想我会支持使用 ripit。但是,它只是其他一些 CD 实用程序(例如 cdparanoia 和 cdda2wav)的包装器。在我看来,将整个 CD 翻录成您需要的文件格式(OGG、WAV、MP3……)会更容易。

但是,如果您必须使用 VLC,那么我怀疑您真正需要的只是曲目信息,而 cdda2wav 可以做到这一点,但除了曲目数量之外,我不知道您具体在寻找什么。无论如何,如果您想这样做来获取曲目数量,那么您可以将参数传递给 VLC,例如:

vlc cdda//sr0 --cdda-track 1

有关 ripit 的更多信息,请查看http://www.suwald.com/ripit/use.php

如果你使用 cdda2wav 或其配套软件,你可能会遇到 Ubuntu 自带的版本问题,所以你可能需要阅读它并从下载其他版本http://cdrecord.org

如果这些都无济于事,那么我只能说需要更多的投入。

答案2

在 Windows 中,您可能会看到“音频文件 1”、“音频文件 2”等名称。这些不是真正的文件,它们是由 Windows 编造的。要么使用支持此功能的 GUI 文件浏览器(如 Nautilus),要么使用 ripit、crip、yaret 或其他脚本进行翻录。

相关内容