5 Maneiras de Esvaziar ou Apagar um Arquivo Grande no Linux

, Author

Ocasionalmente, enquanto lida com arquivos no terminal Linux, você pode querer limpar o conteúdo de um arquivo sem necessariamente abri-lo usando qualquer editor de linha de comando do Linux. Como isso pode ser conseguido? Neste artigo, vamos passar por várias formas diferentes de esvaziar o conteúdo de um ficheiro com a ajuda de alguns comandos úteis.

Cautela: Antes de continuarmos a olhar para as várias maneiras, note que porque no Linux tudo é um ficheiro, deve sempre certificar-se que o(s) ficheiro(s) que está a esvaziar não são ficheiros importantes do utilizador ou do sistema. Limpar o conteúdo de um sistema ou arquivo de configuração crítico pode levar a um erro ou falha fatal da aplicação/sistema.

Por isso, abaixo estão os meios de limpar o conteúdo do arquivo da linha de comando.

Importante: Para o propósito deste artigo, usamos o arquivo access.log nos exemplos a seguir.

Empty File Content by Redirecting to Null

Uma maneira mais fácil de esvaziar ou apagar o conteúdo de um ficheiro usando o redireccionamento da shell null (objecto inexistente) para o ficheiro como abaixo:

# > access.log
Empty Large File Using Null Redirect in Linux
Empty Large File Using Null Redirect in Linux

Empty File Using ‘true’ Command Redirection

Aqui usaremos um símbolo : é um comando embutido na shell que é equivalente à essência do comando true e pode ser usado como um no-op (nenhuma operação).

Um outro método é redirecionar a saída de : ou true comando embutido para o arquivo assim:

# : > access.logOR # true > access.log
Empty Large File Using Linux Commands
Empty Large File Using Linux Commands

Empty File Using cat/cp/dd utilities with /dev/null

No Linux, o dispositivo null é basicamente utilizado para descartar fluxos de saída indesejados de um processo, ou então como um arquivo vazio adequado para fluxos de entrada. Isto é normalmente feito pelo mecanismo de redirecionamento.

E o arquivo /dev/null device é, portanto, um arquivo especial que anula (remove) qualquer entrada enviada para ele ou sua saída é a mesma de um arquivo vazio.

Adicionalmente, você pode esvaziar o conteúdo de um arquivo redirecionando a saída de /dev/null para ele (arquivo) como entrada usando o comando cat:

# cat /dev/null > access.log
Empty File Using cat Comando
Empty File Using cat Comando

Próximo, usaremos o comando cp para apagar o conteúdo de um arquivo como mostrado.

# cp /dev/null access.log
Empty File Content Using cp Command
Empty File Content Using cp Command

No seguinte comando, if significa o ficheiro de entrada e of refere-se ao ficheiro de saída.

# dd if=/dev/null of=access.log
Empty File Content Using dd Command
Empty File Content Using dd Command

Empty File Using echo Command

Aqui, você pode usar um comando echo com uma string vazia e redirecioná-lo para o arquivo como a seguir:

# echo "" > access.logOR# echo > access.log
Empty File Using echo Command
Empty File Using echo Command

Note: Deve ter em conta que uma string vazia não é o mesmo que nula. Uma string já é um objecto tanto quanto pode estar vazio enquanto nulo significa simplesmente a não existência de um objecto.

Por esta razão, quando redirecciona a saída do comando echo acima para o ficheiro, e vê o conteúdo do ficheiro utilizando o comando cat, é imprimida uma linha vazia (string vazia).

Para enviar uma saída nula para o ficheiro, utilize a bandeira -n que diz ao echo para não sair a nova linha que leva à linha vazia produzida no comando anterior.

# echo -n "" > access.log
Empty File Using Null Redirect
Empty File Using Null Redirect

Empty File Using truncate Command

O comando truncate ajuda a encolher ou estender o tamanho de um arquivo para um tamanho definido.

Pode empregá-lo com a opção -s que especifica o tamanho do arquivo. Para esvaziar um conteúdo de arquivo, use um tamanho de 0 (zero) como no próximo comando:

# truncate -s 0 access.log
Truncate File Content in Linux
Truncate File Content in Linux

É isso por enquanto, neste artigo nós cobrimos múltiplos métodos de limpar ou esvaziar o conteúdo do arquivo usando utilitários simples de linha de comando e mecanismo de redirecionamento da shell.

Estas provavelmente não são as únicas formas práticas disponíveis para fazer isto, portanto você também pode nos informar sobre quaisquer outros métodos não mencionados neste guia através da seção de feedback abaixo.

Deixe uma resposta

O seu endereço de email não será publicado.