Ich hatte einmal den Fall, dass ich in einer Linux-Umgebung kurzfristig eine ganze Reihe von GIF-Dateien in PNGs umwandeln musste. Da ich vermeiden wollte, jede einzelne Datei in GIMP reinzuladen, suchte ich nach anderen Möglichkeiten und stieß dabei auf das Linux-Tool convert. Das bei den meisten Linux-Distributionen standardmäßig dabei ist oder über die Paketverwaltung flink nachinstalliert werden kann.
Die Konvertierung damit war dann ein Klacks mit diesem Einzeiler:
for filename in *.gif; do name="${filename%.*}"; convert $filename $name.png; done
Zur Erklärung:
for filename in *.gif; do
geht alle .gif-Dateien im aktuellen Verzeichnis in einer Schleife durch und merkt sich den Dateinamen in der Variable filenamename="${filename%.*}"
speichert in der Variable name den Dateinamen ohne die Erweiterung. Aus abc.gif wird also abcconvert $filename $name.png
ist dann der eigentliche Konvertierungbefehl. Durch den Einsatz der Variablen wird intern daraus alsoconvert abc.gif abc.png
done
ist einfach das Ende der Schleife.
So wurden innerhalb von Sekunden alle GIF-Dateien in PNG-Dateien umgewandelt. Die überflüssigen GIF-Dateien konnten dann mit einem einfachen rm *.gif
entfernt werden. Zur Optimierung der Dateigröße kann man die PNGs dann auch einmal noch durch TinyPNG jagen.