Wenn du eine WordPress-Installation betreibst, kann dein Upload-Ordner mit der Zeit ziemlich gross werden. Besonders wenn du sowohl JPG- als auch WEBP-Versionen deiner Bilder speicherst, sammelt sich schnell unnötiger Ballast an. In diesem Beitrag zeige ich dir, wie du alle WEBP-Dateien entfernst und deine JPGs mit 65 % Qualität komprimierst – direkt per Bash-Befehl auf deinem Server.
Warum diese Bereinigung nötig war
Nachdem ich kürzlich ein Problem mit meinem Webhosting hatte, wurde ich darauf aufmerksam gemacht, dass mein Upload-Ordner über 25.000 Bilder und mehr als 35 GB Speicherplatz belegt. Das hat mich dazu veranlasst, meinen Medienordner zu optimieren und unnötige Dateien zu entfernen.
1. WEBP-Dateien löschen
Falls dein WordPress Upload-Ordner nach Jahr und Monat strukturiert ist (z. B. /wp-content/uploads/2024/01/
), dann kannst du mit folgendem Befehl alle .webp-Dateien entfernen:
find /pfad/zu/wp-content/uploads -type f -name "*.webp" -delete
🔹 Erklärung:
find
durchsucht den gesamten Ordner rekursiv.-type f
sorgt dafür, dass nur Dateien (keine Ordner) gefunden werden.-name "*.webp"
filtert nach WEBP-Dateien.-delete
löscht alle gefundenen Dateien sofort.
Falls du sicherstellen willst, dass keine wichtigen Dateien gelöscht werden, kannst du stattdessen erst eine Liste ausgeben lassen:
find /pfad/zu/wp-content/uploads -type f -name "*.webp"
2. JPGs auf 65 % Qualität komprimieren
Für die Bildkompression nutze ich ImageMagick, ein mächtiges Tool für Bildbearbeitung direkt auf der Kommandozeile:
find /pfad/zu/wp-content/uploads -type f -name "*.jpg" -exec mogrify -quality 65 {} \;
🔹 Erklärung:
mogrify
überschreibt das Bild direkt mit der neuen Qualität.-quality 65
reduziert die JPG-Qualität auf 65 %.{} \;
sorgt dafür, dass der Befehl für jede Datei einzeln ausgeführt wird.
Falls du die Originale behalten möchtest, kannst du stattdessen eine neue Datei erzeugen:
find /pfad/zu/wp-content/uploads -type f -name "*.jpg" -exec convert {} -quality 65 {}.new.jpg \;
Danach kannst du die alten Dateien löschen und die neuen umbenennen:
find /pfad/zu/wp-content/uploads -type f -name "*.jpg" -delete
find /pfad/zu/wp-content/uploads -type f -name "*.new.jpg" -exec rename 's/.new.jpg/.jpg/' {} \;
3. Automatisierung mit einem Cronjob
Falls du regelmässig deine Bilder bereinigen möchtest, kannst du einen Cronjob einrichten. Dieser führt die beiden Befehle jede Nacht um 3 Uhr automatisch aus:
crontab -e
Füge folgende Zeile hinzu:
0 3 * * * find /pfad/zu/wp-content/uploads -type f -name "*.webp" -delete && find /pfad/zu/wp-content/uploads -type f -name "*.jpg" -exec mogrify -quality 65 {} \;
Jetzt wird dein Uploads-Ordner regelmässig aufgeräumt! 🚀
Fazit
Mit diesen einfachen Bash-Befehlen kannst du deinen WordPress Uploads-Ordner bereinigen und Speicherplatz sparen, ohne auf Plugins angewiesen zu sein. Besonders bei grossen Websites lohnt sich das, da JPGs effizienter gespeichert werden.
15 Gigabyte eingespart😊
Aber so hast du dann doch lauter kaputter Einträge. Also Artikel ohne Bilder.
Abgesehen von einigen korrupten Bildern, die das Backup leider nicht überstanden haben, funktioniert alles einwandfrei. Das Plugin, das ich zur Umwandlung von JPG in WebP verwendet habe, hat die JPG-Dateien nicht gelöscht, sondern lediglich mittels mod_rewrite auf die WebP-Versionen verwiesen. Nachdem ich mich dazu entschieden habe, die JPG-Dateien aus Gründen der Bequemlichkeit beizubehalten, habe ich sowohl das Plugin als auch die entsprechende Regel in der .htaccess-Datei entfernt. Eine stichprobenartige Überprüfung des Archivs hat keine fehlenden Bilder ergeben.
Oh, das überrascht mich. Was spricht denn gegen WEBP?
Grundsätzlich nichts. Aber aus Gründen der Kompatibilität (und Bequemlichkeit) habe ich den verbliebenen JPGs den Vorzug gegeben. Auf die ~10% Speicherersparniss verzichte ich dann lieber.
Der kommt mir gerade recht, da ich meine Bilder mal ein wenig aufräumen will. Und da ich bei den Shell-Befehlen im Linux-Umfeld bestenfalls Grundkenntnisse habe, sind so Beiträge wertvoll. Danke!
Für solche Fälle kann ich eine KI deiner Wahl empfehlen. Man kann nur dazulernen 🙂
Moin.
Ich setzte standardmäßig auf webp statt jpg, wegen der besseren Komprimierung. Du setzt wahrscheinlich auf jpg wegen der weiteren Verbreitung?
Auch ein guter Ansatz:
Bilder sind meist viel zu groß. Wenn du die resize Option hinzu nimmst lässt sich richtig Platz sparen.
Viele Grüße