mp3ファイルの名前の先頭から数字を取り除く
こんなスクリプトでもアップしないよりはいいだろう、
ってことでアップしておく。
=begin mp3ファイルの名前の先頭にある数字を消す。 (数字は大体トラックナンバー。) =end require 'find' root = ARGV[0] || '.' Find.find(root){|path| dirname = File.dirname(path) filename = File.basename(path) # 変換例 # 01 hoge.mp3 -> hoge.mp3 # 02 - fuga.mp3 -> fuga.mp3 next unless /^\d+( -)? (.*\.mp3$)/ =~ filename new_filename = $2 puts filename puts " -> #{new_filename}" puts File.join(dirname, new_filename) # ファイル名を変更するところは一応コメントアウトしておく # Yes/Noを聞いて確認した方がいいかも #File.rename(path, File.join(dirname, new_filename)) puts }
前やったみたいにID3タグを利用して、
「アーティスト名 - 曲名.mp3」ってできた方がよさそう。
ファイル名だけじゃなくて、タグも変更された方がいいよなぁ。
ファイル名とタグを調べて、
ファイル名中のアーティスト名と曲名が、
タグ中のアーティスト名と曲名と一致するようにする。
あやしいやつはユーザに確認してもらうようにする、とか。