Eine einfache Methode zum Implementieren der zeitgesteuerten Protokolllöschung unter Linux

Eine einfache Methode zum Implementieren der zeitgesteuerten Protokolllöschung unter Linux

Einführung

Linux ist ein System, das automatisch Dateien, Protokolle, E-Mails, Backups usw. generieren kann. Obwohl Festplatten mittlerweile günstig sind, können wir viel Festplattenspeicherplatz verschwenden, der für diese Dateien verschwendet wird. Es ist sehr erfrischend, das System regelmäßig einige unnötige Dateien bereinigen zu lassen.

Im Projekt werden verschiedene Protokolle generiert und mit der Zeit wird die Anzahl der Protokolle zunehmen. Protokolle, die älter als ein bestimmter Zeitpunkt sind, haben keinen Referenzwert und belegen Speicherplatz. Daher werden die Protokolle von den meisten Projekten gelöscht. Die Anforderung dieses Artikels besteht darin, Protokolle zu löschen, die älter als 7 Tage sind. Dies ist grob in zwei Schritte unterteilt: Einer ist der Befehl zum Löschen der Protokolle und der andere ist das Festlegen einer geplanten Aufgabe.

Löschen Sie die Protokolle der angegebenen Zeit

Suchen Sie zunächst nach allen Protokollen von vor 7 Tagen. Fügen Sie bei Verwendung von find den Parameter -mtime hinzu, um nach Dateien oder Verzeichnissen zu suchen, die innerhalb der angegebenen Zeit in Einheiten von 24 Stunden geändert wurden. Ein Beispiel ist find you/path -mtime +7 -name '*.log' , wie folgt

Die Suche ist abgeschlossen und der nächste Schritt ist das Löschen. Basierend auf der obigen Anweisung kann das Hinzufügen des Parameters -exec eine Löschung bewirken. Der Parameter bedeutet, dass der Befehl ausgeführt wird, wenn der Rückgabewert des Find-Befehls True ist. Die vollständige Anweisung lautet also: find you/path -mtime +7 -name '*.log' -exec rm -rf {} \; . Löschen Sie bei der tatsächlichen Ausführung die Protokolle, die älter als 16 Tage sind, da sonst die folgende Demonstration nicht funktioniert

Vor 16 Tagen gab es nur ein Protokoll. Nach der Ausführung wird es nicht wieder gefunden, was darauf hinweist, dass die Löschung erfolgreich war.

Einrichten geplanter Aufgaben

Fügen Sie den Befehl abschließend der geplanten Aufgabe hinzu. Informationen zu Crontab-Befehlen und Ausführungszeiteinstellungen finden Sie in den folgenden Referenzen.
Bevor wir hinzufügen, werfen wir einen Blick auf die Protokolle von vor 14 Tagen

Es gibt ein Protokoll. Bearbeiten Sie die geplante Aufgabe, führen Sie crontab -e aus, hängen Sie den Befehl zum Löschen des Protokolls an das Ende an */1 * * * * find you/path -mtime +14 -name '*.log' -exec rm -rf {} \; und stellen Sie die Ausführung einmal pro Minute ein. Warten Sie eine Minute und überprüfen Sie die Protokolle von vor 14 Tagen.

Sie können sehen, dass das Protokoll nach dem Hinzufügen der geplanten Aufgabe automatisch gelöscht wurde, ohne dass es manuell gelöscht werden musste. Natürlich ist es nicht notwendig, es jede Minute auszuführen. Stellen Sie die Zeit jeden Tag auf 1 Uhr ein. Die endgültigen Befehle zum geplanten Task- und Protokolllöschen lauten wie folgt

0 1 * * * finde dich/Pfad -mtime +7 -name '*.log' -exec rm -rf {} \; 

Referenzen: Find-Befehl, Crontab-Befehl, Linux verwendet Crontab zum Hinzufügen geplanter Aufgaben.

Zusammenfassen

Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, dass der Inhalt dieses Artikels einen gewissen Lernwert für Ihr Studium oder Ihre Arbeit hat. Vielen Dank für Ihre Unterstützung von 123WORDPRESS.COM.

Das könnte Sie auch interessieren:
  • Detaillierte Erklärung des Befehls zum Anzeigen von Protokolldateien in der Linux-Umgebung
  • So scrollen Sie manuell durch Protokolle im Linux-System
  • Zusammenfassung von 6 Methoden zur Anzeige von Linux-Protokollen
  • So verwenden Sie die Glog-Protokollbibliothek in einer Linux-Umgebung
  • Detaillierte Einführung in Protokolle im Linux-System

<<:  Bei der Verwendung von MySQL aufgetretene Probleme

>>:  JavaScript-Entwurfsmuster, Proxy-Muster lernen

Artikel empfehlen

Spezifische Verwendungsanweisungen für MySQL-Joins

Inhaltsverzeichnis Join-Syntax: 1. InnerJOIN: (In...

HTML-Bild img-Tag_Powernode Java Academy

Zusammenfassung Projektbeschreibungsformat < i...

So konfigurieren Sie die PDFLatex-Umgebung in Docker

Technischer Hintergrund Latex ist ein unverzichtb...

Implementierung des gemeinsamen Grid-Layouts

Keine Lücken auf beiden Seiten, Lücken zwischen j...

Dropdown-Menü implementiert durch HTML+CSS3+JS

Ergebnisse erzielen html <div Klasse="Con...

Containerisierungstransformation für Docker-Großprojekte

Virtualisierung und Containerisierung sind zwei u...

Zusammenfassung der Shell-Methode zum Bestimmen, ob eine Variable leer ist

So ermitteln Sie, ob eine Variable in der Shell l...

Vite führt die Implementierung virtueller Dateien ein

Inhaltsverzeichnis Hintergrund Virtuelle Dateien ...

Lösung zur Konvertierung in Inline-Styles in CSS (css-inline)

Sprechen Sie über die Szene E-Mail senden Einbett...