MP3 Tag and Rename

Many years ago, when I converted to full-time Linux usage at home, one of the things I missed from my Windows days was the plethora of handy tools for manipulating MP3s. I didn’t want anything fancy – just a simple, automated utility for rationalising the tags and names of my music and audio book files. All the software that I found required fiddly hand-editing, so I ended up throwing together an application of my own.

Time has moved on, of course, and now there are all kinds of quality tagging tools for Linux (e.g. EasyTAG, Kid3, puddletag) – yet still I find myself using my crummy old app to clean downloaded MP3s. It’s basic and limited, but it gets the job done without fuss or bother. Perhaps you’ll like it, too…


Does software this trivial deserve a feature list? Probably not, but here it is anyway:



Download this file: MP3TagAndRename.tar.gz

Open a terminal and enter:

$ cd path/to/download/directory
$ tar -xvzf MP3TagAndRename.tar.gz
$ cd MP3TagAndRename
$ ./make.bash

The resultant executable – ‘MP3TagAndRename’ – can be moved wherever you like. (Perhaps to a directory in your PATH…)

The download also contains a couple of configuration profiles. If you want to install them, just type the commands:

$ mkdir -p ~/.MP3TagAndRename
$ cp profiles/* ~/.MP3TagAndRename


I assume you know how to launch an executable under Linux… :)

If you don’t, just open the ‘MP3TagAndRename’ file via your graphical file manager…

Either way, you should see something like this:

MP3TagAndRename screenshot

To load your MP3s, click the ‘MP3’ menu and select either ‘Open Directory…’ (to work with a whole album) or ‘Open File…’ (to edit a single MP3). The table will then be populated with a list of filename(s) and current tag values – for example:

MP3TagAndRename tagging screenshot

Tag Editing

Under the ‘Tags’ tab, there is an entry line for each tag parameter (‘Title’, ‘Artist’, ‘Album’, etc.). To enable modification of a particular tag, tick the checkbox to the left of the corresponding entry line. (The ‘Modify All’ and ‘Modify None’ buttons can be used to tick or untick all checkboxes simultaneously)

Tag parameters may be entered as text, numbers or symbols, combined with various formatting codes that represent current tag contents or file/directory names. To input a formatting code, simply:

The codes are best illustrated with an example. With this directory structure:

[An Author]
\-- [An Audio Book]
    |-- 1.mp3
    |-- 2.mp3
    \-- 3.mp3

…and these formatting strings:

MP3TagAndRename entry sample

The tags for the file ‘2.mp3’ will be generated as follows:

The ‘0’ in ‘%D0%’ corresponds to directory level: 0 = current directory, 1 = next level up, etc.

The ‘2’ in ‘%t2%’ corresponds to the (minimum) length of the track string (with leading zeros as padding)

Other points to note:

Just experiment. You’ll soon get the hang of it!

Once all the formatting parameters have been set, click the ‘Scan’ button. This will update the table with any generated tag values. If required, table entries may be edited by hand. To apply the contents of the table to all listed files, click the ‘Update’ button.

File Renaming

To rename your MP3s, click the ‘Rename’ tab.

MP3TagAndRename renaming screenshot

At the top of the screen, there is a single filename entry line. This accepts text and the same formatting codes used in the tag editing stage (entered in identical fashion, via the ‘% Select’ menu and ‘%’ button). Note that file extensions should be omitted.

Again, once the formatting has been specified, click the ‘Scan’ button to populate the table with ‘New Name’ entries. If these are correct, click the ‘Update’ button to perform the renaming operation.


To save your formatting configuration parameters, select ‘Profile > Save…’ from the menu, then specify a name for the output XML file. To load existing parameters, select ‘Profile > Open…’.

That should be all you need to know. Good luck.


Any problems? Spot any mistakes? Please let me know.