Tudo que você precisa saber

0
247

[ad_1]

fatmawati achmad zaenuri/Shutterstock.com

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

Exclua um único arquivo passando seu nome de arquivo para rm

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

Exclua dois arquivos passando o nome do arquivo e o caminho do diretório para rm

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

Usando o curinga asterisco para remover todos os arquivos com a extensão de arquivo 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*

Usando o curinga asterisco para excluir dois arquivos, um com e outro sem extensão de arquivo

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 *.??

Usando dois curingas de ponto de interrogação para remover arquivos que possuem extensões de arquivo de exatamente dois caracteres

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 *.?

Use rm interativamente para perguntar antes de cada exclusão

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

rm solicitando ao usuário que confirme que deseja excluir um arquivo somente leitura

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

Usando a opção -f (forçar) para evitar que o rm pergunte sobre exclusões

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

Usando a opção -d (diretório) para remover um diretório

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

Usando a opção -r (recursiva) para remover um diretório e seus arquivos

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

Usando os sinalizadores -rfv para fazer o rm remover arquivos e diretórios, até mesmo arquivos somente leitura, sem avisar

Na saída podemos ver que os arquivos são removidos e quando estão vazios os diretórios também são removidos.

A saída dos sinalizadores -rfv mostrando os arquivos que são removidos e os diretórios que são removidos quando estão vazios

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

Uso de "./" para corrigir o problema de excluir um arquivo cujo primeiro caractere é um hífen

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

Tentativa de usar ls em um arquivo com espaços em seu nome, sem citar a string ou escapar dos espaços

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

Tentativa de rm um arquivo com espaços em seu nome, sem citar a string ou escapar dos espaços

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'

Usando rm com um nome de arquivo entre aspas para superar o problema de espaços no nome do arquivo

Você também pode escapar dos espaços com barras invertidas”“, Me gusta esto:

rm backup to delete

Usando rm com um nome de arquivo com espaço de escape para superar o problema de espaços no nome do arquivo

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

[ad_2]