Stefans Wiki



Mehrere Bilder skalieren

Problem

Wenn man mit Fotos hantiert kommt es des öfteren vor das man diese skalieren sollte. Meistens dann wenn man sie auf einen Webserver zum Anschauen ablegen will. Dort reicht es eigentlich vollkommen aus wenn das Foto nur eine geringere Auflösung hat.

Jedes Bild aber einzeln per Grafikprogramm skalieren ist aber etwas aufwendig. Auch die Benutzung von verschiedenen kleinen Tools (meistens mit GUI), die mehrere Dateien gleichzeitig skalieren, ist oft nicht das Wahre. Warum also nicht ein kleines Shell-Script dafür verwenden?

Ziel

Mit Hilfe eines Befehls soll im aktuellen Verzeichnis ein Unterverzeichnis angelegt werden. In diesem Unterverzeichnis sollen alle Bilder des aktuellen Verzeichnis in neuer Skalierung abgelegt werden.

Lösung

Shell-Script das diese Funktionalität verwirklicht. Zusätzlich wird das Kommandozeilenprogramm convert von der Software ImageMagick benötigt.

createthumbs

 1: #!/bin/sh
 2:
 3: # Einstellungen
 4: DIR="thumb"
 5: SIZE="400x800"
 6:
 7: echo
 8: echo "Bilder skalieren:"
 9: echo "================="
10:
11: # Verzeichnis anlegen
12: if [ -d $DIR ]; then
13:     echo "Verzeichnis $DIR existiert schon."
14: else
15:     echo "Lege Verzeichnis $DIR an."
16:     mkdir $DIR
17: fi
18:
19: echo "Bearbeite Bilder:"
20:
21: # Alle Bilder durchlaufen
22: for NAME in *.jpg; do
23:     echo "- $NAME"
24:     convert -size $SIZE $NAME -resize $SIZE $DIR/$NAME
25: done
unix/shell/mehrere_bilder_skalieren.txt · Zuletzt geändert: 24.03.2011 22:05 (Externe Bearbeitung)
Quelle: http://stefanjahn.de/unix:shell:mehrere_bilder_skalieren
Webseite: http://stefanjahn.de