O comando rm permite remover um arquivo ou diretório passando seu nome: “rm filename” ou “rm -d directory”. Você também pode incluir um caminho de diretório. Se houver arquivos no diretório, use a opção -r “diretório rm -r” para remover arquivos e pastas recursivamente.
o linux rm O comando remove arquivos e diretórios. Para usar esta ferramenta com segurança, você precisa ter certeza do que acontecerá quando pressionar “Enter”. Aqui está o que você precisa saber.
Qual é o comando rm no Linux?
o linux rm O comando é principalmente para excluir arquivos. É aquele que a maioria das pessoas encontra logo após começar a usar o Linux. Só porque você é um novato no Linux, você está fadado a cometer erros. Ele criará ou copiará arquivos acidentalmente, com o nome errado ou no lugar errado. Tudo faz parte da curva de aprendizado da linha de comando. As operações de limpeza para tais erros envolvem rm .
a rm O comando pode remover arquivos, grupos de arquivos, diretórios ou árvores inteiras de diretórios. Por isso deve ser usado com cautela. Vestindo rm Não é difícil, mas a penalidade por falhar é alta.
Quando um arquivo é excluído com rm , se foi. Não se move para o lixo. É cancelado imediatamente. Isso não significa que você deve evitar o uso rm . Mas para usá-lo com segurança, você precisa estar ciente do que ele pode fazer e se certificar de que está usando corretamente.
Algumas ferramentas são mais perigosas do que outras e muito menos tolerantes com os bugs. É por isso que nunca houve um filme chamado O Massacre da Chave Inglesa do Texas. rm Não é uma chave inglesa, é definitivamente uma motosserra.
As pessoas usam motosserras o dia todo, todos os dias, e desde que as usem com responsabilidade e consciência, tudo bem. É o mesmo negócio com rm . quando você puxa rm fora de sua bolsa de ferramentas, você precisa desacelerar e verificar, então verifique novamente, sua linha de comando.
a rm O comando é um executável, não faz parte do shell. Embora estejamos usando o Bash aqui, é o Linux padrão rmnão é uma festa especial rm.
RELACIONADO:Linhas de comando: por que as pessoas ainda se incomodam com elas?
Como deletar arquivos com rm
A maneira mais fácil de usar rm é fornecer o nome de um arquivo que você deseja excluir.
rm config.gc
Retorna silenciosamente para a linha de comando. rm adota a postura clássica e silenciosa do Linux de que, se não reclamar de nada, você pode presumir que fez o que você pediu. Fornecer um nome de arquivo como este causa rm para localizar o arquivo no diretório de trabalho atual.
Você pode fornecer vários nomes de arquivo na linha de comando. Você também pode fornecer um caminho de diretório se um arquivo que deseja excluir não estiver no diretório atual.
rm memlog.sh /home/dave/dev-archive/config.gc
Novamente, nada é relatado se rm consegue deletar os arquivos especificados.
RELACIONADO:37 comandos importantes do Linux que você deve saber
Usando curingas com rm
Os curingas permitem que você especifique grupos ou coleções de arquivos sem precisar listar arquivos individuais na linha de comando.
o asterisco”*” representa qualquer sequência de caracteres, incluindo nenhum. O ponto de interrogação”?” representa qualquer caractere único.
Para verificar se seus curingas correspondem ao que você espera, e nada mais, você pode usá-los com ls antes de usá-los com rm.
Para remover todos os arquivos PNG do diretório atual, use “*.png”. Isso significa que qualquer sequência de caracteres seguida por “.png” corresponderá. Quando os arquivos forem excluídos, podemos usar ls para verificar se eles foram embora.
ls *.png
rm *.png
ls *.png
Em nosso computador de teste, temos dois arquivos no diretório atual com nomes começando com “config”.
Podemos remover ambos usando o curinga asterisco. Ele corresponde a ambos os arquivos porque rm está procurando por nomes de arquivos começando com “config”, seguido por qualquer sequência de caracteres. Em um arquivo, essa sequência de caracteres é “.sl3”, a extensão do nome do arquivo. O outro nome de arquivo não possui caracteres após “config”, mas porque o asterisco corresponde a qualquer caractere ou sem personagenstambém corresponde a esse nome de arquivo.
ls config*
rm config*
ls config*
Você pode usar o ponto de interrogação em pares. Isso removerá os arquivos que possuem extensões de exatamente dois caracteres.
ls *.??
rm *.??
ls *.??
RELACIONADO:15 caracteres especiais que você precisa saber para Bash
Usando rm interativamente
Uma forma segura de usar rm é forçá-lo a pedir confirmação antes de excluir cada arquivo. a -i A opção (interativa) permite que você faça isso. Quando você adiciona esta opção à sua linha de comando, rm ele irá avisá-lo antes de cada remoção, dando-lhe a oportunidade de ignorar ações que você não antecipou.
vamos usar o -i (interativo) neste comando. Tenta remover todos os arquivos com uma única extensão de arquivo de caractere.
rm -i *.?
Cada arquivo correspondente é apresentado por vez. Se você responder “y” ou “Y”, o arquivo será excluído. Se você responder “n”, o arquivo é mantido. Na verdade, se você responder com algo diferente de “y” ou “y”, o arquivo será preservado. Você pode simplesmente pressionar “Enter” e o arquivo é preservado.
Você pode trabalhar rapidamente em sua lista de arquivos, excluir ou pular arquivos para selecionar aqueles que deseja excluir. Como veremos, você pode usar o i- opção (interativa) com outros rm opções
Usando a opção rm force
Se você tentar excluir um arquivo somente leitura, rm solicita sua confirmação antes de excluir o arquivo. Essa é uma boa rede de segurança, mas pode se tornar entediante se você tiver muitos arquivos para excluir.
rm geonames.sl3
a -f (forçar) opção instrui rm nunca incitar Está dizendo “Sim, exclua todos os arquivos sobre os quais você normalmente me perguntaria.” Também previne rm reclamar de arquivos inexistentes.
rm -f geonames.sl3
a -f A opção (forçar) geralmente é usada ao remover um conjunto aninhado de arquivos e diretórios.
Removendo diretórios com rm
a rm O comando também pode, opcionalmente, remover diretórios, juntamente com os arquivos que eles contêm. Isso é semelhante ao rmdir comando, mas rmdir você não pode remover diretórios com arquivos neles. Ele remove apenas diretórios vazios. a rm O comando pode facilmente remover diretórios contendo arquivos e outros diretórios.
A exclusão de um diretório é semelhante à exclusão de um arquivo. Fornecemos o nome do diretório na linha de comando. Precisamos incluir o -d (diretório) opção. Como fizemos quando estávamos excluindo arquivos, podemos fornecer o nome de vários diretórios. Podemos fornecer um caminho para um diretório que não esteja no diretório de trabalho atual.
rm -d old-projects
Se o diretório contiver arquivos, isso falhará.
Para excluir um diretório Y seu conteúdo, use o -r sinalizador (recursivo). Isso remove o diretório, seus arquivos e todos os diretórios aninhados que ele contém.
rm -d archive
rm -r archive
O segundo comando é bem-sucedido.
Para mudar rm no modo motosserra completo, podemos combinar o -r (recursivo) e -f (forçar) opções. isso diz rm para excluir recursivamente todos os arquivos e diretórios em uma árvore de diretórios, mesmo que sejam somente leitura e sem nos perguntar.
Em nosso computador de teste, temos um diretório chamado “código migrado”. Ele contém arquivos e outro diretório chamado “6502”. O diretório “6502” também contém arquivos e outro diretório chamado “ASM”. Também há arquivos nesse diretório. Alguns dos arquivos são somente leitura.
Também incluiremos o -v comando (detalhado) para que rm nos diz o que está fazendo.
rm -rfv migrated-code
Na saída podemos ver que os arquivos são removidos e quando estão vazios os diretórios também são removidos.
Evite erros ao usar rm
Espaços e outros caracteres estranhos em nomes de arquivo podem apresentar problemas. Nomes de arquivos começando com um hífen “-” por exemplo, pode ser confundido com opções de linha de comando. Se tivermos um arquivo chamado “-contributors.txt”, rm tentará processar o nome como uma sequência de opções de linha de comando.
Por que rm não tem uma opção chamada “-c“, a análise da linha de comando falha e o arquivo não é removido. Para excluir o arquivo, você deve precedê-lo com “./” para fornecer um caminho.
rm -contributors.txt
rm ./-contributors.txt
Espaços em nomes de arquivos também são problemáticos. Você pode citar o nome do arquivo completo ou usar a tabulação para inserir o nome do arquivo na linha de comando para você mesmo, escapando dos espaços ao fazê-lo. Se você não usar nenhuma dessas opções, rm tratará cada parte do nome do arquivo como um arquivo individual.
Aqui temos dois arquivos, um chamado “backup” e outro chamado “backup para deletar”. Podemos demonstrar o problema com esses nomes de arquivos, usando ls. Se tentarmos usar ls no arquivo “backup to delete” e não escapamos ou citamos o nome do arquivo, o comando falha.
ls -hl backup to delete
ls ele reclama que não consegue encontrar arquivos chamados “para” ou “excluir”, mas encontra um arquivo chamado “backup”. isso é o que rm também o fará. Ele reclamará da falta de dois arquivos e excluirá o arquivo chamado “backup”, que não é o que queríamos.
rm backup to delete
rm você acha que está trabalhando com três arquivos, “backup”, “to” e “delete”. Ele reclama que não consegue encontrar “para” e “excluir”, mas silenciosamente encontra e exclui “backup”.
O nome do arquivo de cotação permite rm para excluir o arquivo correto.
rm 'backup to delete'
Você também pode escapar dos espaços com barras invertidas”“, Me gusta esto:
rm backup to delete
Si usa la función de completar con tabulación para ingresar sus nombres de archivo, se escaparán automáticamente, si es necesario.
¿Qué EPI?
A diferencia de las motosierras del mundo real, no hay equipo de protección personal que pueda usar con rm.
O que você pode fazer é verificar sua sintaxe com ls antes de tentar com rme use o modo interativo para decidir o que será removido.
Fora isso, é prática até se sentir confortável e confiante. A maneira mais segura de fazer isso é copiar um monte de arquivos de sacrifício em um diretório e brincar com eles.
RELACIONADO:Excluir arquivos com mais de x dias no Linux