Linux: Massenverarbeitung Bilder verkleinern
Bilder besitzen von Zeit zu Zeit eine große Auflösung, welche sich in der Dateigröße und in der Qualität widerspiegeln. Benötigt man weder das Eine noch das Andere, so können die Bilder mit verschiedenen Tools verkleinert werden.
Bei einem Bild ist die manuelle Konvertierung noch praktikabel, bei mehreren Bildern hingegen nicht. Unter Linux kann die Shell zur Massenverarbeitung verwendet werden. Als Voraussetzung wird das Programm “convert” benötigt, welches bei der Installation von ImageMagick mitgeliefert wird.
Installation von ImageMagick:
sudo apt-get install imagemagick
Mit dem Kommandozeilenprogramm „convert“ und ein wenig Bash Script ist die Konvertierung in einer Konsole sehr einfach umzusetzen. Dafür ein Terminal öffnen und in den Ordner wechseln, in dem sich die Bilder befinden. Jetzt den Einzeiler einfügen und ausführen. Die Bilder werden daraufhin um 50% verkleinert.
for i in $(ls *.png); do convert -resize 50% $i neu_$i; done
Code | Beschreibung |
---|---|
for i in $(ls *.png); | Eine Schleife über alle PNG Dateien im aktuellen Ordner. |
do | Beginn des Schleifeninhaltes |
convert -resize 50% $i neu_$i; | Mit dem Programm “convert” wird jedes einzelne Bild um 50% (X-Achse) verkleinert.
Die Y-Achse wird proportional berechnet. Weiterhin wird jeweils ein neuer Dateiname “neu_ALTERNAME.png” vergeben. Die Variable “$i” steht für den jeweiligen Dateinamen. |
done | Ende des Schleifeninhaltes |