Bash: copie os logs para outro arquivo e remova o log copiado

Bash: copie os logs para outro arquivo e remova o log copiado

Estou usando Linux e fazendo alguns scripts bash. Eu tenho um arquivo de log que está registrando todos os eventos/alterações em nosso diretório específico. Preciso copiar esses logs para algum outro arquivo para poder trabalhar nele. Mas não posso simplesmente usar:

cp /mnt/abc.log /tmp/xyz.log

Porque isso não excluirá os logs que já foram copiados abc.log- preciso copiar os logs e, em seguida, excluir os logs copiados (não o arquivo) para que da próxima vez eu obtenha novos logs.

Porque se eu copiar os logs, excluir esse arquivo e recriar o arquivo novamente, perderei os eventos ocorridos nesse meio tempo. Eu preciso de algum script bash para isso.

Responder1

Basta usar o logrotate ou qualquer software de rotação de log disponível na Internet. Não faz sentido rolar o seu próprio aqui.

informação relacionada