Comando rm
O comando rm
possui várias opções que permitem uma remoção mais controlada e adaptada às necessidades. Abaixo estão descritas as principais tags (opções) disponíveis para o comando rm
:
Opções Detalhadas do Comando rm
:
-
r
****,-recursive
Remove diretórios recursivamente e todo o conteúdo dentro deles (arquivos e subdiretórios). É necessário para remover diretórios não vazios.
- Exemplo:
rm -r pasta/
- Exemplo:
-
f
****,-force
Força a remoção de arquivos, ignorando a existência de permissões de gravação e suprimindo quaisquer mensagens de erro. Ideal para casos em que não se deseja interações manuais.
- Exemplo:
rm -f arquivo
- Exemplo:
-
i
Solicita confirmação antes de remover cada arquivo. Isso garante que você não remova arquivos por engano.
- Exemplo:
rm -i arquivo
- Exemplo:
-
I
Solicita confirmação se mais de três arquivos forem removidos ou se uma operação recursiva for realizada. Fornece uma proteção adicional em operações maiores.
- Exemplo:
rm -I *
- Exemplo:
-
v
****,-verbose
Mostra informações detalhadas sobre o que está sendo removido, útil para acompanhar o progresso da operação.
- Exemplo:
rm -v arquivo
- Exemplo:
-
-one-file-system
Ao usar esta opção em operações recursivas, não remove arquivos em sistemas de arquivos montados diferentes. Evita que remova dados acidentalmente em pontos de montagem cruzados.
- Exemplo:
rm -r --one-file-system /pasta/
- Exemplo:
-
-no-preserve-root
Permite remover o diretório raiz (
/
). Normalmente, o comandorm
bloqueia essa operação para proteger o sistema de destruições acidentais.- Exemplo:
rm -rf --no-preserve-root /
(Usar com extremo cuidado).
- Exemplo:
-
-preserve-root
Essa é a opção padrão e evita que o diretório raiz seja removido. No entanto, você pode explicitamente fornecê-la para reforçar a segurança.
- Exemplo:
rm -rf --preserve-root /
- Exemplo:
-
d
Remove diretórios vazios. Se o diretório não estiver vazio, o comando falhará.
- Exemplo:
rm -d diretorio_vazio
- Exemplo:
-
-interactive[=WHEN]
Controla a interatividade do comando. Pode ter os valores:
always
(sempre pergunta),never
(nunca pergunta), ouonce
(pergunta uma vez para operações recursivas).
- Exemplo:
rm --interactive=always *
- **
-help
**Exibe a ajuda detalhada do comando e suas opções.
- Exemplo:
rm --help
- **
-version
**Exibe a versão do utilitáriorm
em uso.
- Exemplo:
rm --version
Comando rmdir
O comando rmdir
é usado exclusivamente para remover diretórios vazios. Ele falha se o diretório contiver qualquer arquivo ou subdiretório, diferentemente do rm -r
, que remove diretórios e seus conteúdos.
Sintaxe do rmdir
:
rmdir [opções] diretório
Principais Opções do rmdir
:
-
-ignore-fail-on-non-empty
Não gera erro se o diretório não estiver vazio. Útil para operações em lote onde o estado do diretório é incerto.
- Exemplo:
rmdir --ignore-fail-on-non-empty pasta/
- Exemplo:
-
p
****,-parents
Remove o diretório indicado e seus pais, mas somente se todos estiverem vazios. Isso permite remover uma hierarquia completa de diretórios vazios.
- Exemplo:
rmdir -p pasta/subpasta/subsubpasta
- Exemplo:
-
-verbose
Exibe uma mensagem para cada diretório removido, útil para monitorar a execução.
- Exemplo:
rmdir --verbose pasta/
- Exemplo:
Exemplo de Uso do rmdir
:
-
Para remover um diretório vazio:
rmdir pasta_vazia/
-
Para remover um diretório vazio e seus pais:
rmdir -p pasta/mae/filha/
Diferença entre rm
e rmdir
:
rm
pode remover arquivos e diretórios (inclusive com conteúdo, usandor
).rmdir
remove apenas diretórios vazios e é menos "perigoso" querm -r
.