Linux verwendet Shell-Skripte, um historische Protokolldateien regelmäßig zu löschen

Linux verwendet Shell-Skripte, um historische Protokolldateien regelmäßig zu löschen

1. Dateistruktur des Tools-Verzeichnisses

[root@www-Tools]# Baum-Tools/
Werkzeuge/
├── bin
│ ├── del_history_files
│ 
└── usw.
  ├── del_history_files.cfg
 
2 Verzeichnisse, 2 Dateien

2. Verlaufsdatei löschen Skript del_history_files

[root@www tools]# weitere Tools/bin/del_history_files
#!/bin/sh
 
# Dateien im angegebenen Verzeichnis löschen, deren Dateizeit vor dem angegebenen Zeitknoten liegt. Zeitgranularität: Stunden# Konfigurationsdateiformat: Zu bereinigendes Verzeichnis = Anzahl der Stunden#
#
# eingeschränkten Pfad definieren
PATH="/bin:/usr/bin:/sbin:/usr/sbin"
 
# adirname – gibt den absoluten Verzeichnisnamen einer gegebenen Datei zurück
adirname() { odir=`pwd`; cd `dirname $1`; pwd; cd "${odir}"; }
 
 
# ---------
# Konstanten
# ---------
MYNAM=`Basisname "$0"`
MYDIR=`adirname "$0"`
MYCFG="${MYDIR}/../etc/${MYNAM}.cfg"
MYTMP="${MYDIR}/../tmp"
MYLCK="${MYTMP}/${MYNAM}.lock"
 
# einige Sperren durchführen (so gut wie es in einer Shell geht)
[ -s "${MYLCK}" ] && kill -0 `cat "${MYLCK}"` 2>/dev/null &&
    die "${MYNAM}: läuft bereits!"
echo "$$" > "${MYLCK}"
 
PFADE=(`cat ${MYCFG}`)
für PP in ${PATHS[@]}
Tun
  APP_PATH=`echo ${PP} | awk -F'=' '{print $1}'`
  N=`echo ${PP} | awk -F'=' '{print $2}'`
    wenn [ -d ${APP_PATH} ] ; dann
    T=`/bin/date --date "vor ${N} Stunden" "+%Y%m%d%H%M"`
    TMP_FILE="/tmp/`echo ${PP} | md5sum | awk '{print $1}'`"
    touch -t ${T} ${TMP_FILE}
    Suche ${APP_PATH} ! -newer ${TMP_FILE} -type f -print0 | xargs -0 -n 100 rm -rf
    finde ${APP_PATH} -Typ d -empty -print0 | xargs -0 -n 100 rm -rf &> /dev/null
    fi
Erledigt
 
rm -rf ${MYLCK}

3. Löschen Sie die Konfigurationsdatei del_history_files.cfg des History-File-Skripts

[root@www tools]# weitere tools/etc/del_history_files.cfg
#Zu bereinigendes Verzeichnis = Anzahl der Stunden /home/logs/nginx=720
/home/Protokolle/varnish=720

4. Führen Sie crontab aus

[root@www tools]# mehr /etc/crontab
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=Stamm
HOME=/
#alte Protokolle löschen
00 6 * * * root /home/tools/bin/del_history_files

Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, er wird für jedermanns Studium hilfreich sein. Ich hoffe auch, dass jeder 123WORDPRESS.COM unterstützen wird.

Das könnte Sie auch interessieren:
  • Skript zum regelmäßigen Löschen von Dateien, die älter als ein bestimmter Tag sind, in Windows und Linux
  • Automatisches Sichern von Oracle-Datenbanken mithilfe von Skripten in Linux und Löschen von Sicherungen, die älter als eine bestimmte Anzahl von Tagen sind
  • Linux: Ungültige Linkdatei löschen, Skriptfreigabe
  • Ideen und Tests für benutzerdefinierte Linux-Skripte, um versehentliches Löschen zu verhindern

<<:  React+axios implementiert die Suchbenutzerfunktion von GitHub (Beispielcode)

>>:  Zusammenfassung der in MySQL häufig verwendeten Verkettungsanweisungen

Artikel empfehlen

MySQL-Lerndatenbank-Suchanweisung DQL Xiaobai Kapitel

Inhaltsverzeichnis 1. Einfacher Datenabruf 2. Dat...

Referenz zur MySQL-Optimierungslösung

Probleme, die bei der Optimierung auftreten könne...

Einführung in MySQL-Rollenfunktionen

Inhaltsverzeichnis Vorwort: 1. Einführung in die ...

Kopieren Sie den Inhalt einer Datei an das Ende einer anderen Datei in Linux

Problembeschreibung: Der Inhalt der Datei 11 laut...

Zusammenfassung der Verwendung von vue Watch und Computed

Inhaltsverzeichnis 01. Hörer beobachten (1) Funkt...

Beispielcode zur Implementierung des Dunkelmodus mit CSS-Variablen

Vor kurzem wurde WeChat von Apple gezwungen, eine...

Detaillierte Erläuterung des Excel-Parsings und -Exports basierend auf Vue

Inhaltsverzeichnis Vorwort Grundlegende Einführun...

Analyse gängiger Anwendungsbeispiele von MySQL-Prozessfunktionen

Dieser Artikel veranschaulicht anhand von Beispie...

Detaillierte Erklärung des SELINUX-Arbeitsprinzips

1. Einleitung Der Hauptvorteil, den SELinux für L...

VUE+Canvas realisiert den gesamten Prozess eines einfachen Gobang-Spiels

Vorwort In Bezug auf das Layout ist Gobang viel e...