Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

mv: invalid option -- '0'

How can I rename files with "-" in front of the filename, for example: "-0001.jpg"

Everyime I try to run:

for i in *; do mv "$i" "${i//-/}"; done

or:

for i in *; do mv "$i" "${i#*-}"; done

I got this error:

mv: invalid option -- '0'
Try `mv --help' for more information.

Thanks for any light!

like image 414
Roger Avatar asked Jul 02 '11 15:07

Roger


3 Answers

mv ./-00008.jpg to/some/where.jpg
   ^ - start with path...
like image 180
jm666 Avatar answered Oct 26 '22 00:10

jm666


as with most gnu commands, use the -- switch before the filename with the hyphen. it signifies "end of switches".

like image 42
jcomeau_ictx Avatar answered Oct 25 '22 23:10

jcomeau_ictx


Put a double - before the arguments that can contain "-" in the begin; then there can't be options after --.

mv OPTIONS -- ...
like image 21
ShinTakezou Avatar answered Oct 26 '22 00:10

ShinTakezou