はじめに
妻から、「以前itunesとかで読み込んだアルバムのファイル名にトラックナンバー入れたいんだけどいい方法ない?」と聞かれたので5分位で書いたスクリプト
マジで忘備録かつ自分の好みを反映しているのでツッコミはなしで。
下準備
exiftoolが動くように。
実行
以下のスクリプトをアルバムが入ってるディレクトリから実行(スクリプトは別のディレクトリでも大丈夫だけど、実行は必ずそのディレクトリで。)
実行後、入れたいトラックナンバーの桁数(2〜3がおすすめ)を入力求められます。
TrackNumber.sh
#!/bin/bash
#ディレクトリ内の曲データ等の取得
ls | grep -v .txt > musictemp.txt
#トラックナンバーの桁数指定
echo 桁数は?
read D
DIG=%0"$D"d
#取得した曲データのリストごとにファイル名書き換えを繰り返し実施
while read MNAME
do
#トラックナンバーを取得して指定桁数に変換
TNUMBER=$(printf "$DIG" $(exiftool "$MNAME" | grep Track\ Number | awk -F " " '{print $4}'))
#ファイル名を書き換え:トラックナンバー_もとのファイル名
mv "$MNAME" "$TNUMBER"_"$MNAME"
done < musictemp.txt
#ファイル名を取得したファイルの削除
rm -f musictemp.txt