technology

O que você precisa saber sobre o comando rm no Linux e sua sintaxe avançada

.

o rm O comando (remover) é um dos utilitários Linux mais importantes que todo usuário iniciante ao avançado do Linux deve entender como funciona e como usá-lo com segurança, pois pode excluir arquivos importantes sem confirmação se usado incorretamente.

Então, vamos começar este breve guia, onde você aprenderá um pouco da sintaxe básica e avançada do comando rm e também como usá-lo com segurança para não deletar acidentalmente nada importante.

Qual é o comando rm no Linux?

o rm O comando (remover), que faz parte do GNU Coreutils, é usado para excluir arquivos e diretórios antigos do seu computador, mas pode excluir acidentalmente os arquivos que você realmente deseja manter, portanto, tenha cuidado ao invocar o comando do seu shell.

Como o rm já está incluído no GNU Coreutils, você nem precisará instalá-lo; tudo o que você precisa saber é como usar corretamente o comando e sua sintaxe. Vamos dar uma olhada no comando rm no Linux e ver como ele funciona e nos familiarizar com a sintaxe básica do rm.

Sintaxe básica do comando rm

Conforme mostrado abaixo, a sintaxe do comando rm é composta por rm, que é o nome do utilitário, “OPÇÕES,” que é usado para especificar o tipo de operação a ser executada, e “ALVO,” onde você precisa especificar o arquivo ou o caminho do arquivo no qual deseja aplicar o comando rm.

$ rm [OPTIONS] [TARGET DESTINATION]

Abaixo está a lista das opções mais usadas com o comando rm.

  • rm * * * Removendo vários arquivos
  • rm .[extension] Encontre e remova a extensão correspondente
  • rm -- -* Remova o alvo com um traço
  • rm-d Remova um ou mais diretórios vazios
  • rm-r Para excluir um destino recursivamente
  • rm -f Remova um alvo com força
  • rm-i Remover um alvo interativamente
  • rm-v Remover um alvo no modo detalhado

O que acontece quando você usa o comando rm no Linux?

Quando você executa o comando rm e especifica qual arquivo ou diretório excluir (por padrão, ele não exclui o diretório, a menos que você use o -r opção), ele excluirá o arquivo ou diretório sem colocá-lo na lixeira ou no diretório bin.

A razão para esse comportamento é que sempre que você remove um arquivo usando o rm comandoele será desvinculado do sistema de arquivos sem ser destruído.

Isso permitirá que outros dados substituam o bloco de dados desvinculado. É por isso que, ao excluir arquivos no Linux, é melhor não realizar nenhuma operação de reescrita que sobrescreva os dados, dificultando a recuperação.

Tenha muito cuidado ao remover o arquivo ou diretório usando o comando rm. Não é como o Windows, que permite recuperá-lo da lixeira; uma vez que o arquivo se foi, ele se foi.

Agora que abordamos os fundamentos do comando rmvamos para a parte mais interessante deste artigo.

Remova um arquivo usando o comando rm

Para excluir um arquivo com o comando rm, basta digitar o comando, seguido do nome do arquivo e pressionar enter. Por exemplo, se você quiser excluir um arquivo chamado “arquivo.txt”, digite:

$ rm file.txt

O resultado desse comando é mostrado abaixo.

Remova um arquivo usando o comando rm

Como você pode ver, “arquivo.txt” foi excluído do diretório atual usando o comando rm. Mas e se o arquivo não estiver localizado no diretório atual?

Nesse caso, você precisa especificar a localização exata do arquivo que deseja excluir. Por exemplo, tenho um arquivo localizado no /home/Strong The One/file.txt caminho. Nesta situação, tenho que especificar a localização exata do “arquivo.txt” ao usar o comando rm, conforme mostrado abaixo.

$ rm /home/Strong The One/file.txt

Os resultados desse comando são exibidos abaixo.

Remover um arquivo do local exato
Remover um arquivo do local exato

Removendo vários arquivos usando o comando rm

Se você tiver vários arquivos chamados “arquivo1.txt“, “arquivo.2.txt“, e “arquivo3.txt” em seu caminho atual, você poderá removê-los facilmente especificando todos os arquivos junto com o comando rm, conforme mostrado abaixo.

$ rm file1.txt file2.txt file3.txt

Abaixo está a saída do comando acima.

Removendo vários arquivos usando o comando rm
Removendo vários arquivos usando o comando rm

Encontre e remova a extensão correspondente usando o comando rm

Se você tiver um diretório cheio de arquivos (*.jpg, *.png, *.txt, etc.) e quiser excluir os arquivos com a extensão comum “*.txt”, use o comando rm em vez de especificar cada arquivo individualmente .

Você pode facilmente remover todos eles por meio de sua extensão comum, conforme mostrado abaixo.

$ rm *.txt

Abaixo está a saída do comando acima.

Encontre e remova a extensão correspondente
Encontre e remova a extensão correspondente

Você pode gerenciar facilmente a exclusão de outros arquivos que compartilham a extensão correspondente. Por exemplo, rm *.txt *.jpg removerá todos os arquivos de texto e imagens jpg do local especificado ou atual.

Se você quiser saber mais sobre como remover arquivos com extensões específicas usando curingas, leia este artigo.

Remova o alvo com um traço usando o comando rm

Às vezes, as pessoas criam arquivos com sintaxe ilegal, por exemplo, “arquivo%2.txt” ou “arquivo.txt”. A sintaxe especial usada entre os arquivos pode ser facilmente excluída. E se você colocar “” no início do nome do arquivo (-arquivo.txt)?

Este tipo de arquivo será tratado como uma opção, o que dificultará sua exclusão. Se você tentar excluí-lo, receberá um erro de sintaxe inválido.

Para remover um arquivo com “-” no início do nome do arquivo, use “--” como uma opção ou especifique o arquivo com “./“, como mostrado abaixo.

$ rm -- -file.txt
OR 
$ rm ./file.txt

Os resultados do comando anterior são exibidos abaixo.

Remova o alvo com um traço
Remova o alvo com um traço

Remova um ou mais diretórios vazios usando o comando rm

Se você tiver apenas um diretório vazio em seu sistema, poderá removê-lo facilmente com o “-d” opção usando o rm comando, como mostrado abaixo.

$ rm -d demodir/

Abaixo está a saída do comando acima.

Remova um ou mais diretórios vazios
Remova um ou mais diretórios vazios

Você pode até excluir vários diretórios vazios de uma só vez usando o rm comando Como rm -d demodir1/ demodir2/ ou o rmdir comando Como rmdir demodir1/ demodir2/ para excluir os diretórios vazios no sistema Linux.

Remova um ou mais diretórios com conteúdo recursivamente usando o comando rm

Até agora, aprendemos como remover diretórios sem nenhum conteúdo, mas e se o diretório contiver o conteúdo dentro dele?

A maneira padrão de usar o comando rm com o “-d” opção não fará o trabalho. Se você tentar removê-lo, receberá a mensagem “rm: não é possível remover ‘xyz/’: Diretório não vazio” erro, conforme mostrado abaixo.

rm: não é possível remover 'demodir/': Diretório não vazio
rm: não é possível remover ‘demodir/’: Diretório não vazio

Para remover tal diretório contendo conteúdo dentro dele, use o comando “-r” para excluir o diretório recursivamente com todo o conteúdo dentro dele, conforme mostrado abaixo.

$ rm -r demodir/

Abaixo está a saída do comando acima.

Remova um ou mais diretórios com conteúdo recursivamente
Remova um ou mais diretórios com conteúdo recursivamente

Remova um alvo com força usando o comando rm

Descobrimos como excluir um diretório com vários arquivos dentro dele. Há momentos em que determinados arquivos no diretório pertencem a um usuário diferente ou não têm as permissões adequadas (proteção contra gravação).

Essa falta de permissão solicitará que você escolha “y” ou “n” ao excluir o diretório, conforme mostrado abaixo.

Escreva arquivo protegido dentro do diretório
Escreva um arquivo protegido dentro do diretório

Se você se decidiu e deseja excluir tudo à força sem solicitar sim ou nãouse o “-f” com a opção “-r” opção, conforme mostrado abaixo.

$ rm -rf demodir/

Abaixo está a saída do comando acima.

Remova um alvo com força
Remova um alvo com força

Remova um alvo interativamente usando o comando rm

o rm comando é muito destrutivo e, até agora, vimos que ele não pede permissão ao excluir arquivos. Para o diretório, se você estiver usando o -r comando, qualquer diretório contendo arquivos gerais pertencentes a você seria excluído em segundos.

Se você deseja deletar interativamente seus arquivos dentro do diretório perguntando “y” ou “n” na tela, use o "-eu" bandeira como mostrado abaixo.

$ rm -ri demodir/

Abaixo está a saída do comando acima.

Remova um alvo interativamente usando o comando rm
Remova um alvo interativamente usando o comando rm

Remova um alvo no modo detalhado usando o comando rm

Você notou até agora que sempre que você exclui qualquer diretório contendo arquivos (ignore a forma interativa), ele não lista o arquivo que está sendo excluído na tela do terminal?

Use “-v” para ativar o modo detalhado e ver uma lista de todos os arquivos excluídos dentro do diretório, conforme mostrado abaixo, na tela do terminal.

$ rm -rv demodir/

Abaixo está a saída do comando acima.

Remova um alvo no modo detalhado usando o comando rm
Remova um alvo no modo detalhado usando o comando rm

Remova um alvo usando os caracteres curinga

Acima, você aprendeu como usar diferentes opções para excluir arquivos e diretórios recursivamente, mas ainda não foi apresentado ao caractere curinga, que torna o comando rm mais dinâmico para remover um grande número de arquivos de seu sistema usando um determinado padrão de uma só vez.

Então, deixe-me falar sobre alguns dos caracteres curinga que você pode usar para se livrar do arquivo:

  • ^ Excluir da partida
  • * Corresponde a uma ou mais ocorrências
  • ? Corresponde a uma única ocorrência
  • [] Especifique um intervalo para correspondência

Aqui está um pequeno trecho de código que usa caracteres curinga para excluir todos os arquivos onde a substring “ile” aparece em qualquer lugar no nome do arquivo.

$ rm -v *ile*

Se desejar, você pode aprender mais sobre isso seguindo este link: Remova arquivos usando um caractere curinga no Linux.

Embrulhar

Este artigo ensinou como excluir arquivos usando o comando rm, bem como excluir arquivos recursivamente, interativamente, etc.

De qualquer forma, se você tiver algum conselho que acha que outro leitor poderia usar, compartilhe com eles.

.

Mostrar mais

Artigos relacionados

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Botão Voltar ao topo