Em um mundo perfeito, acho que sim, devemos usar sistematicamente --
. Mas todos nós aprendemos a usar o comando rm
sem digitar sistematicamente --
, e digitá-lo custa três pressionamentos de tecla extras para que eu não veja isso acontecendo. Além disso, a convenção --
para finalizar as opções nem sempre existiu (é por isso que muitas pessoas não aprenderam sobre isso quando aprenderam a usar rm
).
Dito isto, ao usar rm
(e outros comandos) em scripts de shell, você definitivamente deve sempre programar defensivamente. Então, por exemplo:
rm "$1" # Remove the file named in the first command line argument
não é seguro e deve ser rm -- "$1"
. No entanto,
rm "/var/spool/foo/$thatfile"
é seguro, porque o conteúdo de $thatfile
não pode fazer com que rm
interprete mal seus argumentos.
No seu exemplo específico ( rm *
), provavelmente usaria rm ./*
como solução segura.