求mp3文件重命名脚本

sh/bash/dash/ksh/zsh等Shell脚本
回复
头像
bearscafe
帖子: 694
注册时间: 2007-05-05 23:11

求mp3文件重命名脚本

#1

帖子 bearscafe » 2008-02-24 6:19

希望将当前目录下的所有mp3文件,根据ID3标签重命名成

代码: 全选

歌手名-歌曲名.mp3
的格式
头像
iblicf
帖子: 3766
注册时间: 2007-01-15 17:15

#2

帖子 iblicf » 2008-02-24 9:32

代码: 全选

sudo apt-get install python-mutagen

代码: 全选

#转utf8
find . -iname “*.mp3” -execdir mid3iconv -e GBK {} \;

代码: 全选

mid3iconv -d 这该死的爱.mp3 
Updating 这该死的爱.mp3
COMM=='chi'=åúÀ­ÓéÀÖ  WWW.FEILA.NET
TDRC=2006
TALB=The One
TRCK=2
TPE1=张靓颖
TIT2=这该死的爱
TCON=Pop

代码: 全选

#!/bin/bash
for i in *.mp3
do
     singer=`mid3iconv -d $i|awk -F= '/^TPE1/{print $2}'`
     title=`mid3iconv -d $i|awk -F= '/^TIT2/{print $2}'`
     mv $i $singer-$title.mp3
done



:wink: 没有调试,
头像
bearscafe
帖子: 694
注册时间: 2007-05-05 23:11

#3

帖子 bearscafe » 2008-02-24 13:53

非常感谢2楼。

我不懂脚本,乱试了一下。
我认为问题出在最后一行上:
mv $i $singer-$title.mp3
主要是两个问题:
1. $i应该加双引号,因为原来的文件名中可能包含空格,mv会误认为多个文件移动。
2. $singer-$title.mp3的“-”总被mv误认为后面的是参数。加了转义符"\"也不行。
上次由 bearscafe 在 2008-02-24 14:37,总共编辑 1 次。
头像
iblicf
帖子: 3766
注册时间: 2007-01-15 17:15

#4

帖子 iblicf » 2008-02-24 14:37

mv "$i" "$singer-$title.mp3"
头像
bearscafe
帖子: 694
注册时间: 2007-05-05 23:11

#5

帖子 bearscafe » 2008-02-24 15:13

对许多文件正确,但对有些文件仍有问题,比如这个文件的ID3信息输出如下:

代码: 全选

mid3iconv -d 02.mp3
Updating 02.mp3
PRIV=WM/MediaClassSecondaryID=
PRIV=WM/WMCollectionGroupID (16 bytes)
PRIV=WM/Provider=User Feedback
TPE2=BANDARI
PRIV=WM/WMCollectionID (16 bytes)
TIT2=绿野仙踪.02.The Emmigerant's Letter
PRIV=WM/WMContentID (16 bytes)
PRIV=WM/UniqueFileIdentifier=;
PRIV=WM/MediaClassPrimaryID (16 bytes)
TRCK=3
MCDI=[unrepresentable data]
TPE1=Bandari
TALB=绿野仙踪
TCOM=BANDARI
TCON=New Age
TLEN=202333
执行如下命令:

代码: 全选

i=02.mp3
singer=`mid3iconv -d "$i"|awk -F= '/^TPE1/{print $2}'`
title=`mid3iconv -d "$i"|awk -F= '/^TIT2/{print $2}'`
查看:

代码: 全选

echo $i
输出为02.mp3

代码: 全选

echo $singer
输出为空

代码: 全选

echo $title
输出为空
头像
iblicf
帖子: 3766
注册时间: 2007-01-15 17:15

#6

帖子 iblicf » 2008-02-24 15:42

怎么不行呢 ? 应该是 Bandari-绿野仙踪.02.The Emmigerant's Letter.mp3
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙

#7

帖子 eexpress » 2008-02-24 19:27

id3的版本太多了。复杂的。总会有不如意的地方的。
● 鸣学
回复