so in this case we have files named like this:
track01.cdda.wav.mp3 track06.cdda.wav.mp3 track11.cdda.wav.mp3
track02.cdda.wav.mp3 track07.cdda.wav.mp3 track12.cdda.wav.mp3
track03.cdda.wav.mp3 track08.cdda.wav.mp3 track13.cdda.wav.mp3
track04.cdda.wav.mp3 track09.cdda.wav.mp3
track05.cdda.wav.mp3 track10.cdda.wav.mp3
but we want to rename them so they are like "05.mp3"
#the first "track" is actually a variable name but does not need $ because it is already referenced by the ${track
for track in `ls *.mp3`; do name=${track/track/}; name=${name/.cdda.wav/}; mv $track $name; done
The main part of the code above is the following:
name=${track/track/}
name=${name/.cdda.wav/}
${track is the name of the variable that has the string you want to substitute
/track/ means search for the string "track" in that variable and replace with nothing.
If we had wanted to change it to something else:
name=${track/track/somethingelse}
bash, substitutionso, cdda, wav, mp, rename, quot, variable, referenced, ls, mv, substitute, somethingelse,