
各ファイルのファイル名をそのファイルのタイトルに変更するCLIまたはGUIソリューションが必要です。
ファイル名がコンテンツを正しく表示しない複数のラジオポッドキャストがあります。これはタイトルの下のメディアプレーヤーに表示されますが、ファイルマネージャでこのコンテンツを表示できません。そのため、ファイル名をタイトルに変更したいと思います。
Linuxの基本ツールを探しています。、Foobar2000などのプログラムを使用してWineでこれを行う方法を知っていますが。
コメント後の編集:mp3ファイルです。ドルフィンファイルマネージャの情報パネルに表示されるタイトルデータを表示できます。
答え1
探しているなら基本ツールmp3rename
一部のディストリビューションでは、guiだけでなくコマンドラインも提供していますpyrenamer
。
前者の場合は、まず「タイトル」(&t
)形式を指定してください。
mp3rename -s '&t'
mp3rename
その後、ファイル名のリストを提供してファイル名を変更できます。たとえば、mp3ファイルが含まれているディレクトリにある場合を入力します。あるいは、一部の起動ディレクトリABCで名前付きファイルをmp3rename *.mp3
再帰的に検索することもできます。*.mp3
find ABC -name '*.mp3' -exec mp3rename {} \;
予期しないことが発生しないようにファイルのコピーを処理することもできます。
GUIの場合コーンMusic
以降のバージョンには、「メタデータを使用して音楽の名前を変更する」ことができるタブがあります。このフィールドに文字列を入力し{title}.mp3
て作業したいファイルを選択し、クリックして名前がどのようにPreview
なるかを確認します。
答え2
フェルはどうですか?これはLinuxの基本です。私のテスト設定は次のとおりです。スクリプトは、mp3.pl
作業する曲を含む同じディレクトリにあります。music
コマンドライン引数として渡します。コードはこのディレクトリを繰り返してすべてのmp3ファイルを取得します。次に、トラックリストを一度に1つずつ繰り返して名前を変更してトラックのタイトルを指定します。
まず、どのトラックがあるかを確認してください。
$ ls music
track1.mp3 track2.mp3
パスワード:
use warnings;
use strict;
use File::Copy;
use File::Find::Rule;
use MP3::Tag;
if (! @ARGV){
print "usage: perl mp3.pl <directory>\n";
exit;
}
my $dir = $ARGV[0];
my @files = File::Find::Rule->file()
->name('*.mp3')
->in($dir);
for my $track (@files){
my $mp3 = MP3::Tag->new($track);
my $title = $mp3->title;
$title .= '.mp3';
move $track, "$dir/$title" or die $!;
}
走る:
perl mp3.pl music
「音楽」ディレクトリが変更されました:
$ ls music/
Almost Famous.mp3 No Love (feat Lil Wayne).mp3