Macete para apagar conteúdo de arquivo sem excluí-lo

Publicado por Daniel Zaia Manzano em 15/07/2013

[ Hits: 76.970 ]

 


Macete para apagar conteúdo de arquivo sem excluí-lo



Podem ocorrer situações em que se faz necessário apagar todo o conteúdo de um arquivo, porém, sem apagá-lo. E apagar o arquivo e criá-lo novamente, é muito trabalhoso e um tanto quanto amador. :)

Usar o comando echo > arquivo.txt faz com que o conteúdo do arquivo seja apagado, e em seu lugar fique apenas um caractere de nova linha.

Exemplo:

echo texto > arquivo.txt
$ cat arquivo.txt

texto


echo > arquivo.txt
$ cat arquivo.txt




Usar a opção "-n" do comando echo faz com que o caractere de nova linha nem chegue a aparecer, fazendo com que o arquivo fique completamente vazio, apesar de ainda existir.

Exemplo:

echo linux > arquivo.txt
$ cat arquivo.txt

linux


echo -n > arquivo.txt
$ cat arquivo.txt




Em ambas abordagens, ocorreu o seguinte:
  • A saída do comando foi redirecionada com sobrescrita (>) para um arquivo. Significa dizer que o resultado do comando substituirá o conteúdo do arquivo.
  • Acontece que o bash, por padrão, primeiro faz a operação de sobrescrita, para depois executar o comando. Disto isto, podemos concluir que, mesmo que não exista um comando propriamente dito, a sobrescrita invariavelmente acontece.

Exemplo:

echo gnu > arquivo.txt
$ cat arquivo.txt

gnu

> arquivo.txt
$ cat arquivo.txt



Outras dicas deste autor

Debian - Descobrindo a que pacote determinado arquivo pertence

Visualizando imagens no modo texto

PrintScreen em modo texto

Liberando memória RAM ociosa

Macete para busca reversa de comandos

Leitura recomendada

Arch Linux Ultimate Install

Assista TV no Firefox

InstallFest Solidária

Adventures da Lucas Arts direto em seu Linux

Personalizando seu próprio prompt de comando

  

Comentários
[1] Comentário enviado por eltonmanoel em 15/07/2013 - 02:24h

Uma outra opção, que eu utilizo, é essa abaixo:
echo >''arquivo.txt

[2] Comentário enviado por Carlos_Cunha em 16/07/2013 - 20:45h

Eu uso mais simples ainda....

> arquivo


Apagado todo conteúdo do arquivo de forma simples e pratica!!!

[3] Comentário enviado por dzm_linux em 17/07/2013 - 08:04h


[2] Comentário enviado por PretooOO em 16/07/2013 - 20:45h:

Eu uso mais simples ainda....

> arquivo


Apagado todo conteúdo do arquivo de forma simples e pratica!!!


Amigo,

Leia a minha dica do início ao fim, e você vai descobrir que o macete ao qual eu me refiro é justamente este!

Abraços



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts