in questi casi si utilizza il doppio trattino "--"
codice:
macmini:~ cacao74$ touch -- -cacao
macmini:~ cacao74$ ls -l -- -cacao
-rw-r--r--  1 cacao74  staff  0 21 Mar 00:21 -cacao
macmini:~ cacao74$ rm -- -cacao
macmini:~ cacao74$ ls -l -- -cacao
ls: -cacao: No such file or directory
prova a fare lo stesso senza "--" per notare la differenza

dalla "man" di bash
...
-- A -- signals the end of options and disables further option
processing. Any arguments after the -- are treated as file-
names and arguments. An argument of - is equivalent to --.
...