[NTLUG:Discuss] Trivial MP3 conversion script

Stuart Johnston saj at thecommune.net
Sat Jun 7 15:30:32 CDT 2008


Daniel Hauck wrote:
> I did this:
> 
> for i in *.[Ww][Mm][Aa]; do lame $i ; done
> 
> 
> The intent and purpose is to convert all WMA files in a folder over to
> MP3.  It works, but it leaves "wma" in the resulting filename.
> 
> For example, there is a file called "song.wma" and I run lame against
> it, the resulting output file is "song.wma.mp3"
> 
> How can I take the extension off of the file list and then process like
> this?
> 
> ... do lame $i.[Ww][Mm][Aa] $i.mp3; done
> 
> What magic code strips off the ".wma"?

'basename' will strip off the directory path and optionally the 
extension.  Something like this:

do lame $i.[Ww][Mm][Aa] `basename $i wma`mp3; done

The suffix for basename is case sensitive though so perhaps something 
with sed:

do lame $i.[Ww][Mm][Aa] `echo $i | sed 's/[Ww][Mm][Aa]//'`mp3; done

Probably better solutions out there.



More information about the Discuss mailing list