タイトルが次の形式に従う大規模な音楽ファイルディレクトリがあります。
Title_stringOfNumbers - Artist.mp3
私の目標は、アンダースコアと数字を削除し、アーティスト名をタイトルに変更することです。
たとえば、元のファイル名は次のようになります。
whats up_7979841261 - randomArtist.mp3
私が欲しいファイル名:
randomArtist - whats up.mp3
'
タイトルには特殊文字(、、、、、、、さらには!
日本語.
の文字まで)と数字を含めることができますが、ファイル名の最初の部分では_
アンダースコアと数字は互いに隣り合ってはいけません(したがって同様のファイルは存在しません)。(
)
/
\
multiple word title_2_6878492178471289 - artist.mp3
rename
これまで、端末でコマンドを使用してアンダースコアを削除しようとしましたが、この行は何も実行せず、使い慣れていないために問題が発生しました。
rename 'y/_//' *
これはすべてPOP!_OS 21.10を使用するため、Ubuntuで動作するすべてが私のシステムでも機能するはずです。私はPerlスクリプトを使用しましたrename
(一緒にインストールされていますsudo apt install rename
)。しかし、私が見つけた3つのバリエーション(rename
、、、prename
)file-rename
が私のシステムにインストールされました。
ベストアンサー1
(Perl)を使用できますrename
。
rename -n 's/^(.*)(_\d+) - (.*)\.mp3$/$3 - $1.mp3/' *.mp3
-n
結果が良い場合は、削除して実際にタスクを実行してください。
ファイルに正しいタグがある場合は、id3
次のタグを使用して名前を変更することをお勧めします。
たとえば、mp3rename
またはexiftool
sudo apt install mp3rename
mp3rename -s '&a - &t'
mp3rename *.mp3