↑ ↓ auswählen, Enter öffnen, Esc schließen

Bilder rekursiv nach AVIF umwandeln

Vorsicht: Dieser Befehl verändert das System. Vor dem Ausführen verstehen, was er tut.

Werte anpassen, der Befehl aktualisiert sich live
user@server
find /var/www/vhosts/example.com/httpdocs/wp-content/uploads -type f \( -iname '*.jpg' -o -iname '*.jpeg' -o -iname '*.png' \) -exec sh -c 'for f; do [ -e "$f.avif" ] || avifenc -s 6 "$f" "$f.avif" >/dev/null; done' sh {} +

Legt neben jedem JPEG und PNG eine Datei bild.jpg.avif an und überspringt bereits umgewandelte Bilder. AVIF komprimiert oft noch stärker als WebP, die Kodierung ist aber deutlich langsamer. Ein kleinerer Wert bei der Geschwindigkeit bringt etwas bessere Kompression bei mehr Rechenzeit.

Hinweis: avifenc steckt im Paket libavif-bin. Auf vielen Bildern kann der Lauf lange dauern und den Server spürbar belasten, daher am besten mit nice starten.

Offene Frage vor Freigabe: Paketname libavif-bin auf Debian 12 und Ubuntu 24.04 bestätigen. Die Option -q für die Qualität gibt es erst ab libavif 1.0 (Ubuntu 24.04), Debian 12 hat 0.11, daher hier nur -s (Geschwindigkeit 0 bis 10).

Auch gesucht als

  • Bilder in AVIF konvertieren
  • JPG zu AVIF umwandeln
  • AVIF für Website erzeugen
  • modernes Bildformat erstellen

Bilder rekursiv nach WebP umwandeln

$find /var/www/vhosts/example.com/httpdocs/wp-content/uploads -type f \( -iname '*.jpg' -o -iname '*.jpeg' -o -iname '*.png' \) -exec sh -c 'for f; do [ -e "$f.webp" ] || cwebp -quiet -q 80 "$f" -o "$f.webp"; done' sh {} +
vorsichtBilder und Performance

Große Bilder in wp-content/uploads finden

$find /var/www/vhosts/example.com/httpdocs/wp-content/uploads -type f \( -iname '*.jpg' -o -iname '*.jpeg' -o -iname '*.png' -o -iname '*.gif' -o -iname '*.webp' \) -size +500k -printf '%s\t%p\n' | sort -rn | head -50 | numfmt --field=1 --to=iec
harmlosBilder und Performance

JPEG-Bilder verlustfrei mit jpegoptim optimieren

$find /var/www/vhosts/example.com/httpdocs/wp-content/uploads -type f \( -iname '*.jpg' -o -iname '*.jpeg' \) -exec jpegoptim --strip-all --preserve {} +
vorsichtBilder und Performance

PNG-Bilder verlustfrei mit optipng optimieren

$find /var/www/vhosts/example.com/httpdocs/wp-content/uploads -type f -iname '*.png' -exec optipng -o2 -strip all -preserve {} +
vorsichtBilder und Performance

Bilder mit Abmessungen über X Pixel finden

$find /var/www/vhosts/example.com/httpdocs/wp-content/uploads -type f \( -iname '*.jpg' -o -iname '*.jpeg' -o -iname '*.png' \) -exec identify -format '%w %h %i\n' {} + 2>/dev/null | awk -v max=2560 '$1 > max || $2 > max'
harmlosBilder und Performance

Bilder ohne loading-Attribut auf einer Seite finden

$curl -s https://example.com/ | tr '\n' ' ' | grep -oiE '<img[^>]*>' | grep -vi 'loading='
harmlosBilder und Performance

Erst lesen, dann ausführen.

Die Befehle auf myline.de greifen direkt in Server, Dateien und Datenbanken ein. Ein falscher Pfad oder Platzhalter kann Daten unwiderruflich löschen oder einen Server unerreichbar machen.

  • Alle Befehle werden ohne Gewähr bereitgestellt und sind nicht auf jedem System getestet.
  • Vor dem Ausführen verstehen, was ein Befehl tut, und jeden Platzhalter prüfen.
  • Vorher ein Backup anlegen und möglichst zuerst auf einem Testsystem ausprobieren.
  • Die Ausführung erfolgt auf eigene Verantwortung. Eine Haftung für Schäden ist ausgeschlossen, soweit gesetzlich zulässig.