我想.m3u
自动为目录内的每个文件夹创建一个(播放列表)文件,并将其保存在该特定文件夹内并以该特定文件夹的名称保存?
如何使用命令创建.m3u 文件?
playlist='play.m3u' ; if [ -f $playlist ]; then rm $playlist ; fi ; for f in *.mp3|; do echo "$(pwd)/$f" >> "$playlist"; done
此命令针对单个目录的“.mp3”文件执行此操作。
多种文件格式
我希望上述命令适用于任何音频/视频格式。扩展名类似,.m4a
.flac
.mp4
.mkbv
以便它也可以用于视频播放列表
多个目录
如果我在这些文件夹的父文件夹上应用脚本,则每个文件夹都应该获得自己的.m3u
文件
鹦鹉螺脚本
如果可能的话,Nautilus 脚本可以通过右键单击完成所有这些操作,这将是惊人的,我准备提供更多输出或任何其他所需的内容
优点
- 良好的文件管理
- 它会自动在 Rythmbox(或其他音乐播放器)中添加带有专辑名称的播放列表
- 一旦完成,就不需要逐个文件夹播放文件了
答案1
find -type f -iname "*.mp3" -or -iname "*.flac" -or -iname "*.m4a" > playlist.m3u
另一个想法是您可以使用 bash 循环并使用以下命令检查 mime 类型file
:
echo "" > playlist.m3u
for path in $(find -type f) do;
if [ file --mime-type "$path" | egrep '(audio|video)' ]; then
echo "$path" >> playlist.m3u
fi
done
答案2
在做这个领域的研究时,我发现了这一点Bash 脚本为子目录中的所有 mp3 创建 .m3u 播放列表文件由...制作斯卡森。
这满足了您的最基本要求:多种文件格式和多种目录。