GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Konvertieren Sie Webp-Bilder per Linux-Befehl in PNG

So konvertieren Sie .webp-Bilder in .png unter Linux

Getestet auf Linux Ubuntu 20.04

Diese Frage ist der Top-Treffer für die Google-Suche nach „linux convert .webp image to png“. Für alle, die hierher stolpern und nur diese einfache Antwort wollen, hier ist sie:

# 1. Install the `webp` tool
sudo apt update
sudo apt install webp

# 2. Use it: convert in.webp to out.png
dwebp in.webp -o out.png

Fertig! Sie haben jetzt out.png .

Referenzen

  1. Ich habe von dwebp erfahren aus der Frage selbst

Wenn Sie viele konvertieren/umbenennen müssen, würde ich Ihnen empfehlen, GNU Parallel zu verwenden und konvertieren Sie sie nicht nur schneller, indem Sie sie parallel ausführen, sondern nutzen Sie auch die Möglichkeit, Dateinamen zu ändern.

Der gewünschte Befehl lautet:

parallel dwebp {} -o {.}.png ::: *.jpg

wo die {.} bedeutet "der Dateiname ohne die ursprüngliche Erweiterung" .

Wenn Sie auch in Unterverzeichnisse rekursieren möchten, können Sie Folgendes verwenden:

find . -name "*.jpg" -print0 | parallel -0 dwebp {} -o {.}.png

Wenn Sie eine Fortschrittsanzeige oder eine "voraussichtliche Ankunftszeit" wünschen , können Sie --progress hinzufügen oder --eta nach parallel Befehl.

Wenn Sie sehen möchten, was GNU Parallel ausführen würde, ohne dass tatsächlich etwas ausgeführt wird, fügen Sie --dry-run hinzu .

Ich empfehle GNU Parallel für Sie in dieser Zeit, in der CPUs "fetter" werden (mehr Kerne) statt schneller.


Ich habe es mit einem kurzen Einzeiler gemacht, der parallel nicht erfordert im System installiert werden

for x in `ls -1 *.jpg`; do dwebp {} -o ${x%.*}.png ::: $x; done

Und das funktioniert für das aktuelle Verzeichnis

Ich würde versuchen, die rekursive @mark-setchell-Lösung so zu ändern, dass sie folgendermaßen aussieht:

for x in `find . -name "*.jpg"`; do dwebp {} -o ${x%.*}.png ::: $x; done

Die ${x%.*} Teil ist derjenige, der hier ein Wort der Erklärung erfordert - er weist Bash an, . zu nehmen und alles nach dem Punkt ab x Variable. Es neigt dazu, sich bei Namen mit mehr Punkten falsch zu benehmen, da ich nicht überprüft habe, ob Regex hier faul oder gierig ist - die Antwort kann daher weiter abgestimmt werden.


Linux
  1. 6 Linux-Metazeichen, die ich gerne auf der Kommandozeile verwende

  2. Linux-mv-Befehl

  3. Linux-IP-Befehl

  4. Linux-cd-Befehl

  5. Wie füge ich Bilder in der Befehlszeile zusammen?

Linux-Typ-Befehl

Welcher Linux-Befehl

W-Befehl unter Linux

Bei Befehl unter Linux

So konvertieren Sie PNG-Bilder im Stapelbetrieb in das JPG-Format unter Linux

So konvertieren Sie PDF in PNG-Bilder und zurück unter Linux