This question already has an answer here:

I'm hoping this is the correct place to ask.

Basically, I'm using cmus and have a little bash script to automate downloading, renaming and moving a mp3.

However, cmus just lists the song name as its full path in the library (e.g.: /home/user/music/genre/song.mp3)

I'd like to change this by adding tags such as album, title, and artist to the mp3 files.

I'm not sure if in Unix some files inherently have metadata like this or if you have to create the data in a specific way for the music player to be able to read it.

I read the cmus man page and I don't see anything about how it reads tags or labels.

Overall, through a bash script after reading an input, such as 'albumname' I'd like to know how to assign that input as the album tag of a mp3 file for a music player to use.

marked as duplicate by Christopher, drewbenn, vonbrand, muru, Anthony Geoghegan Aug 16 at 14:07

This question has been asked before and already has an answer. If those answers do not fully address your question, please ask a new question.

  • Preferably I would like to completely avoid installing a new program, I was just hoping there's unix commands to modify existing, inherent tags on an mp3 – YungHepatitis Aug 13 at 13:44
  • did you have a look at wiki.gnome.org/Apps/EasyTAG ? – Bart Aug 13 at 13:50
  • I've heard about it, and the wiki only shows installation, I suppose it shows source code too. I'm just wondering if I can look at and change metadata of an mp3 through unix commands alone. – YungHepatitis Aug 13 at 13:58
  • though if you need command line, I think id3v2 or eyeD3 for the command line would be better suited – Bart Aug 13 at 14:15

Try eyeD3.

Install it from python pip. pip installs latest version.

Docs here: https://eyed3.readthedocs.io/en/latest/ .

eyeD3 has good documentation so it's easy to start.

Also it has a bunch of useful plugins - try it!

Not the answer you're looking for? Browse other questions tagged or ask your own question.