1
resposta

[Dúvida] Sobrescrita do comando SORT

Porque o comando sort na utilização combinada: cat listagem.txt | sort > listagem.txt apaga o conteúdo do arquivo listagem.txt e na utilização combinada: tail -n 5 syslog | grep systemd | sort > ~/labs/redirecionamento/log5.txt este mesmo problema não ocorre? sendo que pelo vídeo, ambos os arquivos já existiam nos respectivos diretórios antes da execução do sort.

1 resposta

Olá Rafael, tudo bem com você?

No primeiro comando: cat listagem.txt | sort > listagem.txt, o redirecionamento através do símbolo de > (maior) sobrescreve o conteúdo do arquivo listagem.txt com a saída do comando sort. Por isso, o conteúdo original é perdido.

No segundo comando: tail -n 5 syslog | grep systemd > /labs/redirecionamento/log5.txt, o redirecionamento através do símbolo de > (maior) cria um novo arquivo chamado log5.txt no diretório ~/labs/redirecionamento/ e redireciona a saída do comando sort para esse novo arquivo. Nesse caso, como o arquivo log5.txt não existia previamente, o comando cria um novo arquivo com o resultado da ordenação.

Portanto, o problema de sobrescrita ocorre no primeiro exemplo porque o arquivo de destino é o mesmo arquivo de origem, enquanto no segundo exemplo, o arquivo de destino é um arquivo novo criado durante a execução do comando.

Vale ressaltar, que como o instrutor ressaltou em aula, o redirecionamento com o sinal de maior (>) sempre sobrescreve o conteúdo do arquivo, enquanto o redirecionamento com o sinal de maior maior (>>) adiciona a saída ao final do arquivo, temos que usar estes sinais com sabedoria para não sobrescrevermos e perdemos informações importantes no dia a dia.

Espero ter ajudado. Continue mergulhando em conhecimento e não hesite em voltar ao fórum para continuar aprendendo e interagindo com a comunidade.

Em caso de dúvidas estou à disposição.

Abraços e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software