メディアライブラリを通過し、各MP3ファイルのid3タイトルタグをファイル名に等しく設定するbashスクリプトを持っている人はいますか?
私は他の自動化された方法も受け入れています。GUIアプリケーション、またはジョブを自動的に実行するものであれば何でもかまいません。
EasyTagメソッドについては、次のとおりです。mp3ID3 ファイルの一括タイトルタグの名前を変更する方法 —残念ながら、手順がわかりません。
eyed3
メディアライブラリを通過し、各MP3ファイルのid3タイトルタグをファイル名に等しく設定するbashスクリプトを持っている人はいますか?
私は他の自動化された方法も受け入れています。GUIアプリケーション、またはジョブを自動的に実行するものであれば何でもかまいません。
EasyTagメソッドについては、次のとおりです。mp3ID3 ファイルの一括タイトルタグの名前を変更する方法 —残念ながら、手順がわかりません。
eyed3
回答:
EasyTAGは確かにこの問題に最適なツールです。ここで答えを見つけました。使用方法に関しては、EasyTAG自身のドキュメントが最良のリファレンスです。
EasyTagを開き、音楽ファイルが含まれるフォルダーに移動し、フォルダー内のすべてのファイル、またはタグ付けするすべてのファイルを選択し、「ファイルのスキャン」ボタンをクリックしますどちらかです)。
次に、スキャナーのドロップダウンが「タグの入力」に設定されていることを確認し、「タグの入力」フィールドで、フィールドの下の例が探しているものになるまで適切に編集します。[タグの入力]フィールドに何を入力するかについてさらにサポートが必要な場合は、[?]をクリックします。凡例のボタン(さまざまなコードの翻訳対象のリスト)およびマスクボタンを押して、いくつかの開始点をリストします。
結果に満足したら、[ファイルのスキャン]ボタンをクリックします([ファイルのスキャン]ダイアログボックスで、現在の場所を取得するために最初にクリックしたものではなく...アイコンは同じに見えます)。変更が適用されます。 。アーティスト名またはアルバム名を取得していない場合は、変更するすべてを選択してデータを入力し、そのフィールドの横にある小さなボタンをクリックするだけで、選択されたすべてのファイルがそのアーティストまたはアルバムに入力または変更されます。これはほとんどの分野で機能します。
完了したら、保存ボタンをクリックして完了です。
PS:CDDBスキャナーは、タグ付けしようとしている完全なアルバム、または少なくとも市販の曲ファイルがある場合、非常によく機能します。
PPS:まだ半目覚めているようです。元の投稿で書いた内容に従って、Fill Tagフィールドでこれを試してください。
%n. %a - %t
この質問に関連するセクションは次のとおりです。
1.2.2。「Fill Tag」スキャナーで自動的に:
このモードを使用するためのいくつかの条件:
- アルバムでソートされたファイル
- ファイル名または親ディレクトリにタグ情報(アーティスト、アルバム、タイトルなど)が含まれています
- 空のタグまたは正しくないタグ
「Fill Tag」スキャナは、パターンを使用して、ファイル名とディレクトリ内の単語をタグエントリに関連付けます。この方法で、スキャナーウィンドウまたはツールバーの「緑」ボタンを押すと、タグフィールドに自動的に入力できます。タグの一部が完成している場合は、[設定]ウィンドウの[スキャナー]タブにある[タグのスキャン時にフィールドを上書きする]オプションを使用して、すべてのフィールドを新しい値に置き換えます。
各コードは、次のルールに従ってフィールドに対応します。
Strings associated with code Will fill the field %a Artist %b Album %c Comment %p Composer %r Copyright %e Encoded by %g Genre %i None! (used to ignore a string) %l Number of tracks %o Original artist %n Track %t Title %u URL %y Year
注:ミスを避けるために、パターン内でコードを1回だけ使用することをお勧めします。もちろん、手動でタグ付けする場合のように、選択したファイルのみがスキャナーによって処理されます。リスト内の定義済みパターンを使用するか、ファイル名とディレクトリの形式に対応する独自のパターンを作成できます。適切なパターンを選択するとき、または書き込むときにミスを避けるため、パターンを適用する前にプレビューに結果がすぐに表示されます。さまざまなコードに関するヘルプが必要な場合は、「ヘルプ」ボタン(救命浮環)を押して各コードの凡例を表示します。また、独自のパターンを保存する場合は、[マスク]ボタンを押すと、スキャナーウィンドウに小さなエディターが表示されます。
以下はパターンの使用例です。
a)次のファイル名:
“/mnt/MP3/EVANESCENCE – Fallen (2003) – Rock/01. Going Under.mp3” b) with the pattern : “%a - %b (%y) - %g/%n. %t” c) you will fill the tag with theses strings : Artist (%a) => EVANESCENCE Album (%b) => Fallen Year (%y) => 2003 Genre (%g) => Rock Track (%n) => 01 Title (%t) => Going Under
さまざまなコマンドラインツールが役立つことがわかりました。
id3v2は、コマンドラインid3v2タグエディターです。id3v2タグを追加/変更/削除し、id3v1タグをid3v2タグに変換できます。id3libを使用しています。共同メンテナンスを探しています。興味がある場合は、myers_carpenterにメールしてください。
eyeD3は、ID3タグを処理するためのPythonモジュールおよびプログラムです。mp3ファイルに関する情報(ビットレート、サンプル周波数、再生時間など)も提供されます。サポートされている形式はID3 v1.0 / v1.1およびv2.3 / v2.4です。
これらは、ディレクトリをスキャンするスクリプトを作成するときに理想的です。
これは必ずしも完全に正確になるとは限りませんが、一般的なUnixツール(busyboxバージョンを含む)のみを使用してmp3ファイルの名前を取得するために使用しました。
for x in *.mp3; do
TITLE=$(strings "$x" |grep TAG |grep -v TAGL |sed "s/^.*TAG//g ; /^L$/d ; /^@$/d ; /^$/d ; /^Ac$/d")
#mv "$x" "$TITLE.mp3"
echo $x" "$TITLE.mp3" #just echo for now, until further tested
done
編集:私は質問を読み違えましたが、これを知っているので、sedを使用して$ TITLEをファイル名「$ x」に置き換えることができます。
sed -i "s/$TITLE/$x/" "$x"
これはID3のすべての仕様を満たしていないことはほぼ100%確信していますが、最初にバックアップを作成する限り、基本的な個人使用には十分かもしれません。
Ubuntu 18.04 LTSの場合(すべてのDebianフレーバーがこれで問題なく実行されると思います):
eyeD3をインストールします sudo apt install eyeD3
bashスクリプト用のファイルを作成します(「タッチ」を使用しました。好きなテキストエディターを使用できます)
これをコピーしてファイルに貼り付けます:
ファイル名をコピーして、Titleタグに書き込みます
for x in *; do
eyeD3 --title="${x%.*}" "$x"
echo $a
done
進行状況を表示する必要がない場合は、echo $a
「完了」という単語の上の行を省略します。
ファイルを実行可能にします。
chmod +x filename
スクリプトを実行するディレクトリ(メディアファイルを含むディレクトリ)にスクリプトをコピーします。例えば:
cp filename /music/directory
スクリプトをコピーしたディレクトリに移動します:
cd /music/directory
スクリプトを実行します。
./filename
完了
Ubuntu 18.04 LTSで機能しました。妻がこれを約3分で書いてくれたので、機能しない場合は質問に答えられません。私はプログラマーに精通していない、私はこのweb、dns、ssh、sftp、ftp、AD / Domain、file、firewall、router / serverなどをセットアップしています。スクリプティング、プログラミングなどを利用するのが大好きです:-)
ubuntuforums.org
ソースを引用します。:)これは、ubuntuforums.org
リンクが使用できなくなった場合に、スーパーユーザーを将来訪問するユーザーを支援します。