Como excluir arquivos e diretórios no terminal Linux

O rm ermdir os comandos excluem arquivos e diretórios no Linux, macOS e outros sistemas operacionais semelhantes ao Unix. Eles são semelhantes ao del eDeltree comandos no Windows e DOS. Esses comandos são muito poderosos e têm algumas opções.

É importante notar que os arquivos e diretórios excluídos usando rm e rmdir não seja movido para o Lixo. Eles são imediatamente removidos do seu computador. Se você acidentalmente excluir arquivos usando esses comandos, a única maneira de restaurá-los é a partir de um backup.

Como remover arquivos com rm

O caso mais simples é excluir um único arquivo do diretório atual. Digite o rm comando, um espaço e, em seguida, o nome do arquivo que deseja excluir.

rm arquivo_1.txt

Se o arquivo não estiver no diretório de trabalho atual, forneça um caminho para o local do arquivo.

rm ./path/to/the/file/file_1.txt

Você pode passar mais de um nome de arquivo para rm. Isso exclui todos os arquivos especificados.

rm arquivo_2.txt arquivo_3.txt

Os curingas podem ser usados ​​para selecionar grupos de arquivos a serem excluídos. O * representa vários caracteres e o ? representa um único personagem. Este comando excluiria todos os arquivos de imagem png no diretório de trabalho atual.

rm * .png

Este comando excluiria todos os arquivos que possuem uma extensão de um único caractere. Por exemplo, isso excluiria Arquivo.1 e Arquivo.2, mas não Arquivo.12.

rm *.?

Se um arquivo estiver protegido contra gravação, você será avisado antes de excluí-lo. Você deve responder com y ou n e pressione “Enter”.

Para reduzir o risco de usar rm com curingas, use o -eu opção (interativa). Isso requer que você confirme a exclusão de cada arquivo.

rm -i * .dat

O -f (forçar) opção é o oposto de interativa. Ele não solicita confirmação, mesmo se os arquivos estiverem protegidos contra gravação.

rm -f nome do arquivo

Como remover diretórios com rm

Para remover um diretório vazio, use o -d opção (diretório). Você pode usar curingas (* e ?) em nomes de diretório, assim como você pode fazer com nomes de arquivos.

diretório rm -d

Fornecer mais de um nome de diretório exclui todos os diretórios vazios especificados.

rm -d diretório1 diretório2 / caminho / para / diretório3

Para excluir diretórios que não estão vazios, use o -r opção (recursiva). Para ficar claro, isso remove os diretórios e todos os arquivos e subdiretórios contidos neles.

rm -r diretório1 diretório2 diretório3

Se um diretório ou arquivo estiver protegido contra gravação, você será solicitado a confirmar a exclusão. Para excluir diretórios que não estão vazios e suprimir esses prompts, use o -r (recursivo) e -f (forçar) opções juntas.

diretório rm -rf

É necessário cuidado aqui. Cometer um erro com o rm -rf comando pode causar perda de dados ou mau funcionamento do sistema. É perigoso e cautela é a melhor política. Para obter uma compreensão da estrutura do diretório e dos arquivos que serão excluídos pelo rm -rf comando, use o árvore comando.

Usarapt-get para instalar este pacote em seu sistema se você estiver usando o Ubuntu ou outra distribuição baseada em Debian. Em outras distribuições Linux, use a ferramenta de gerenciamento de pacotes de sua distribuição Linux.

sudo apt-get install árvore

Executando o árvore O comando produz um diagrama simples de entender da estrutura do diretório e dos arquivos abaixo do diretório a partir do qual é executado.

árvore

Você também pode fornecer um caminho para o árvore para fazer com que ele inicie a árvore de outro diretório no sistema de arquivos.

caminho da árvore / para / diretório

O rm comando também tem --one-file-system, --no-preserve-root, --preserve-root opções, mas essas são recomendadas apenas para usuários avançados. Se você errar, poderá excluir acidentalmente todos os arquivos do sistema. Consulte a página do manual do comando para obter mais informações.

Como remover diretórios com rmdir

Existe outro comando, chamado rmdir, que você pode usar para excluir diretórios. A diferença entre rm e rmdir é aquele rmdir só pode excluir diretórios que estão vazios. Ele nunca excluirá arquivos.

O caso mais simples é excluir um único diretório vazio. Como com rm, você pode passar vários nomes de diretório para rmdir ou um caminho para um diretório.

Exclua um único diretório no diretório atual, passando seu nome para rmdir :

diretório rmdir

Exclua vários diretórios passando uma lista de nomes pararmdir :

rmdir diretório1 diretório2 diretório3

Exclua um diretório que não esteja no diretório atual, especificando o caminho completo para esse diretório:

rmdir / caminho / para / diretório

Se você tentar excluir uma pasta que não está vazia, rmdir apresentará uma mensagem de erro. No exemplo a seguir rmdir com sucesso e silenciosamente, exclui o clientes diretório, mas se recusa a excluir o projetos diretório porque contém arquivos. O projetos O diretório é deixado exatamente como estava e os arquivos nele permanecem intactos.

Quando rmdir fornece um erro “Diretório não vazio”, ele pára de processar os diretórios que foram passados ​​para ele na linha de comando. Se você pediu para excluir quatro diretórios e o primeiro continha arquivos, rmdir apresentaria a mensagem de erro e não faria mais nada. Você pode forçá-lo a ignorar esses erros com o --ignore-fail-on-non-empty opção para que outros diretórios sejam processados.

No exemplo a seguir, duas pastas foram passadas para rmdir, estes são trabalho / relatórios e trabalho / citações . O --ignore-fail-on-non-empty opção foi incluída no comando. O trabalho / relatórios pasta contém arquivos, então rmdir não pode excluí-lo. O --ignore-fail-on-non-empty forças de opção rmdir para ignorar o erro e passar para a próxima pasta que ele precisa processar, que é trabalho / citações. Esta é uma pasta vazia e rmdir apaga.

Este foi o comando usado.

rmdir --ignore-fail-on-non-empty work / reports / work / quotes

Você pode usar o -p opção (pais) para excluir um diretório e também para excluir seus diretórios pais. Este truque funciona porque rmdir começa com o diretório de destino e, em seguida, retorna ao pai. Esse diretório agora deve estar vazio, para que possa ser excluído por rmdir, e o processo se repete, voltando ao caminho que foi fornecido para rmdir.

No exemplo a seguir, o comando que é passado para rmdir é:

rmdir -p trabalho / faturas

Tanto o faturas e a trabalhos os diretórios são excluídos, conforme solicitado.

Esteja você usando o Bash ou qualquer outro shell, o Linux fornece comandos flexíveis e poderosos para você excluir diretórios e arquivos diretamente da linha de comando do terminal. Algumas pessoas preferem um fluxo de trabalho que gire em torno do terminal. Outros podem não ter escolha no assunto. Eles podem estar trabalhando em servidores sem uma GUI instalada ou em uma sessão remota em um sistema sem cabeça, como um Raspberry Pi. Esses comandos são perfeitos para esse grupo de pessoas.

Mas seja qual for o tipo de fluxo de trabalho de sua preferência, esses comandos se prestam muito bem a serem incluídos em scripts de shell. Se um script for acionado por um cron trabalho, ele pode ajudar a automatizar tarefas de manutenção de rotina, como limpar arquivos de log indesejados. Se você investigar esse caso de uso, lembre-se do poder desses comandos, teste tudo com cuidado e sempre mantenha um backup recente.


$config[zx-auto] not found$config[zx-overlay] not found