rm
é codificado para solicitar "interativamente" (prompt aguardando entrada do usuário) em arquivos protegidos contra gravação. Existem dois métodos para impedir que rm
pergunte:
rm -rf somedir
e
rm -r --interactive=never somedir
(ambos também funcionam sem -r
ao excluir arquivos em vez de dirs)
explicação:
-f
torna rm
"ignorar arquivos e argumentos inexistentes, nunca solicitar".
--interactive=never
faz o que diz: nunca seja interativo. em outras palavras: nunca avisar.
a diferença entre -f
e --interactive=never
é esta parte: "ignorar arquivos e argumentos inexistentes".
compare:
$ rm -rf nonexistingname
$ echo $?
0
e
$ rm -r --interactive=never nonexistingname
rm: cannot remove 'nonexistingname': No such file or directory
$ echo $?
1
a diferença é principalmente interessante ao escrever scripts em que você nunca quer que rm
seja interativo, mas ainda assim deseja manipular erros.
Resumo de
: na linha de comando, use rm -rf
. nos scripts use rm -r --interactive=never
.