Bash 重命名音乐曲目

Bash 重命名音乐曲目

我有一个包含大约 80 首音乐曲目的文件夹。

我想将它们的名称从“艺术家 - 标题”重命名为“01.艺术家 - 标题”一直到 80。

我不太清楚该如何做,有人可以帮忙吗?

答案1

其他一些人指出,严格在 bash 内部执行此操作可能不是您想要的,因为它可能会混淆您自己管理库的任何音乐程序。

无论如何,你可以在 bash 中执行以下操作:

i=0
for f in *; do
  mv "$f" $(printf '%02d. %s' $i "$f")
  i=$((i+1))
done

周围的双引号$f非常重要,因为文件名肯定包含空格。

答案2

我不知道你是否仍然需要它,但无论如何:

#!/bin/bash

i=1
for file in *
do
  mv "$file" "$i.$file"
  i=$((i+1))
done

答案3

更新 :

您需要的是一个可以为您批量重命名音乐文件或标签(文件内部)的软件。

我建议使用专门处理如此大量音乐文件的工具,即免费工具 Mp3Tag。它可以满足您的要求,甚至更多。

http://www.mp3tag.de/en/

该软件不仅能让您根据每个文件中编码的 mp3 标签重命名或替换文件名的任何部分,还能让您逐步重命名文件,您可以自定义其工作方式,以数字(01,02 等)或字母(AA、AB 等...)作为前缀或后缀。

它也可以通过使用文件名来更改标签来反过来工作

最后,如果某些标签缺失或者您想自动替换它们,它可以上网为您填充标签。

如果它回答了你的问题,请告诉我。祝你一切顺利。

相关内容