Bash: Protokolle in andere Datei kopieren und kopiertes Protokoll entfernen

Bash: Protokolle in andere Datei kopieren und kopiertes Protokoll entfernen

Ich verwende Linux und arbeite mit einigen Bash-Skripten. Ich habe eine Protokolldatei, die alle Ereignisse/Änderungen in unserem bestimmten Verzeichnis protokolliert. Ich muss diese Protokolle in eine andere Datei kopieren, damit ich damit arbeiten kann. Aber ich kann nicht einfach Folgendes verwenden:

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

Denn dadurch werden die bereits kopierten Protokolle nicht gelöscht abc.log. Ich muss die Protokolle kopieren und dann die kopierten Protokolle (nicht die Datei) löschen, damit ich das nächste Mal neue Protokolle erhalte.

Denn wenn ich die Protokolle kopiere, die Datei lösche und sie dann erneut erstelle, gehen die in der Zwischenzeit aufgetretenen Ereignisse verloren. Ich brauche dafür ein Bash-Skript.

Antwort1

Verwenden Sie einfach logrotate oder eine andere im Internet verfügbare Software zur Protokollrotation. Es macht keinen Sinn, hier eine eigene Software zu entwickeln.

verwandte Informationen