If you like Perl, an easy way to get a hold of the tags is this:
#!/usr/bin/env perl use File::Find; use MP3::Tag; use Cwd; $dir = "."; open(OUTFILE,">tags.txt") || die "Can't open: $!\n"; print OUTFILE 'Output for "'.getcwd().'"'." and subdirectories\n"; print OUTFILE "Path;Artist;Title;Track;Album;Year;Genre;File Size\n"; find(\&edits, $dir); close(OUTFILE); print "Done\n"; sub edits() { $fn=$_; $not_shown=1; if ( -f and $fn=~m/.+\.mp3$/ig) { $mp3 = MP3::Tag->new($fn); ($title, $track, $artist, $album, $comment, $year, $genre) = $mp3->autoinfo(); $fs= -s $fn; print OUTFILE "$File::Find::name\\$fn;$artist;$title;$track;$album;$year;$genre;$fs\n"; } if ( -f and $fn=~m/.+\.wav$|\.m4a$/ig) { $fs= -s $fn; print OUTFILE "$File::Find::name\\$fn;;;;;;;$fs\n"; } }
From there, a little scripting, and you've got what you want.
Я внес несколько изменений в этот скрипт и поместил его на Github: https://github.com/hovenko/audio-renamer, который теперь также предоставляет печать команд "mv" для переименования файлов в соответствии с номером дорожки и названием.