bash脚本:如何在文件名中更改艺术家和歌曲名称的位置

时间:2011-04-06 11:28:20

标签: bash file-rename

我有以下文件:

Song - Arist.mp3

我想知道如何将其更改为:

Arist - Song.mp3

使用bash脚本命令。

谢谢!

2 个答案:

答案 0 :(得分:4)

rename 's/([^-]+) - (.*).mp3/$2 - $1.mp3/' *mp3

重命名是perl(gprename)的一部分。

答案 1 :(得分:2)

#!/bin/bash                                                                                                                                                  

trim() { echo $1; }

for i in *.mp3; do
    ARTIST=${i#*-}
    ARTISTNAME=${ARTIST%%.mp3}
    SONG=${i%-*}
    SONGTRIMMED=$(trim $SONG)
    NEW="$ARTISTNAME - $SONGTRIMMED.mp3"
    mv "$i" "$NEW"
done