Vorwort: Ich habe zuvor den offiziellen Proxy-Cache von Nginx als statischen CDN-Cache verwendet und festgestellt, dass es ein großes Problem war, den Cache in diesem Modul zu leeren. Es kann URLs nur einzeln löschen. Aus diesem Grund habe ich ein Skript geschrieben, um den Cache stapelweise zu leeren. Zu den Hauptmerkmalen gehören: 1. Nach Dateityp bereinigen 2. Bereinigen Sie nach bestimmten Dateinamen 3. Aufräumen nach Website-Verzeichnis Nachfolgend sehen Sie den Skriptcode der Bash-Shell. Im Internet gibt es bereits viele ähnliche Skripte, die jedoch nicht sehr gut sind und leicht zu Fehlern führen können. #!/bin/bash #E-Mail: [email protected] #Nginx Proxy_Cache-Shell-Skripte automatisch bereinigen #Tante:Sonne~Muschel #Datum:23.02.2017 echo -e "\n\n" echo -n -e "\e[35;1mBitte geben Sie den spezifischen Pfad des Nginx Proxy_cache-Cache ein (Freundliche Erinnerung: Sie können die Tab-Vervollständigungsfunktion verwenden!)\e[0m\e[34;5m:\e[0m" read -e Pfad CACHE_DIR=$Pfad echo -e "\e[32;1m----------------------------------------------------------------\e[0m" echo -e "\e[32;1m----------------------------------------------------------------\e[0m" echo -n -e "\e[32;1mBitte geben Sie die Aktion ein, die Sie löschen möchten\n1. Löschen nach Dateityp\t2. Löschen nach bestimmtem Dateinamen\t3. Löschen nach Dateiverzeichnis\n:" Aktion lesen Fall $Aktion in 1) echo -e "\e[32;1m----------------------------------------------------------------\e[0m" echo -e "\e[32;1m----------------------------------------------------------------\e[0m" echo -n -e "\e[34;1m Bitte geben Sie den Cache-Dateityp ein, den Sie löschen möchten (Sie können mehrere Parameter durch Leerzeichen getrennt eingeben)\e[0m\e[34;5m:\e[0m" lesen -a DATEI für i in `echo ${FILE[*]}|sed 's/ /\n/g'` Tun grep -r -a \.$i ${CACHE_DIR}| awk 'BEGIN {FS=":"} {print $1}' > /tmp/cache_list.txt für j in „cat /tmp/cache_list.txt“ Tun rm -rf $j echo "$i $j erfolgreich gelöscht!" Erledigt Erledigt ;; 2) echo -e "\e[32;1m----------------------------------------------------------------\e[0m" echo -e "\e[32;1m----------------------------------------------------------------\e[0m" echo -n -e "\e[33;1m Bitte geben Sie den spezifischen Namen der Cache-Datei ein, die Sie löschen möchten (Sie können mehrere Parameter durch Leerzeichen getrennt eingeben)\e[0m\e[34;5m:\e[0m" lesen -a DATEI für i in `echo ${FILE[*]}|sed 's/ /\n/g'` Tun grep -r -a $i ${CACHE_DIR}| awk 'BEGIN {FS=":"} {print $1}' > /tmp/cache_list.txt für j in „cat /tmp/cache_list.txt“ Tun rm -rf $j echo "$i $j erfolgreich gelöscht!" Erledigt Erledigt ;; 3) echo -e "\e[32;1m----------------------------------------------------------------\e[0m" echo -e "\e[32;1m----------------------------------------------------------------\e[0m" echo -n -e "\e[33;1mUnterstützte Modi sind:\n1. Löschen Sie alle Caches im Store-Verzeichnis der Website: test.dd.com/data/upload/shop/store\n2. Löschen Sie alle Caches im Shop-Verzeichnis der Website: test.dd.com/data/upload/shop\e[0m\n" echo -n -e "\e[34;1m Bitte geben Sie das spezifische Verzeichnis der Cache-Datei ein, die Sie löschen möchten\e[0m\e[34;5m:\e[0m" lesen -a DATEI für i in `echo ${FILE[*]}|sed 's/ /\n/g'` Tun grep -r -a "$i" ${CACHE_DIR}| awk 'BEGIN {FS=":"} {print $1}' > /tmp/cache_list.txt für j in „cat /tmp/cache_list.txt“ Tun rm -rf $j echo "$i $j erfolgreich gelöscht!" Erledigt Erledigt ;; *) echo "Eingabefehler, bitte erneut eingeben" ;; esac 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. Wenn Sie mehr darüber erfahren möchten, schauen Sie sich bitte die folgenden Links an Das könnte Sie auch interessieren:
|
<<: So verwenden Sie VUE und Canvas, um ein Thunder Fighter-Tippspiel zu implementieren
>>: Tutorial zur Verwendung von Prepare-, Execute- und Deallocate-Anweisungen in MySQL
HTML-Onfocus-Ereignisattribute Definition und Ver...
In diesem Artikelbeispiel wird der spezifische Co...
Das Kubernetes-Team hat vor Kurzem angekündigt, d...
Bevor wir über die CSS-Priorität sprechen, müssen...
HTTP-Header-Erklärung 1. Akzeptieren: Informiert d...
In diesem Artikelbeispiel wird der spezifische Co...
Die Installation und Bereitstellung eines private...
<br />Dieses Tag kann eine horizontale Linie...
Beim Verwenden von Animation.css habe ich festges...
1. Schnittstelle für die Anforderung einer Antwor...
Methode 1: Verwenden Sie den Befehl SET PASSWORD ...
Docker virtualisiert eine Brücke auf dem Host-Rec...
Wenn sich ein Benutzer registriert, klickt er auf...
Zunächst einmal spielt der Blogger die Community-...
In diesem Artikel wird der spezifische Code von V...