javaguy Posted August 15, 2008 Report Share Posted August 15, 2008 I have a bunch of mp3 files with names like " - blahblah01.mp3", " - blahblah02.mp3" and so on. I want to remove the " - " from the front of the file name. The spaces seem to make it interesting. Here's what I have so far... find . -name " - *.mp3" -execdir bash -c "mv `echo \"{}\"` `echo {} | sed 's/ - //'`" \; Here's what I get: mv: target `track1.mp3' is not a directory Any suggestions? Quote Link to comment Share on other sites More sharing options...
paul Posted August 15, 2008 Report Share Posted August 15, 2008 ls -d *.mp3 | sed 's/\(.*\).mp3$/sed "s\/\ -\ \/\/g" "&" > \1.mp3' | sh this hasn't been tested .. but might work :D Quote Link to comment Share on other sites More sharing options...
Steve Scrimpshire Posted August 15, 2008 Report Share Posted August 15, 2008 Or maybe: find . -name " - *.mp3" -exec sh -c 'mv ${0} "${0//\ \-\ / }"' {} \; Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.