Mit Linux Bilder verkleinern
1 Comment
Das Convert Kommando
Mit der "ImageMagick Suite" kann man Bilder bequem mit dem "convert" Kommando verkleinern.
Soll eine ganzen Unterordner von Bildern abgearbeitet werden, so ist ein Skript notwendig.
Hier eine Anleitung wie man sich ein Skript entsprechend anlegen kann.
1. Paket
Das Paket "imagemagick" sollte installiert sein
# apt-get install imagemagick
2. Ein einzelnes Bild verkleinern
Im folgenden Beispiel wird ein Bild auf 600 Pixel mit einer Qualität von 80% skaliert.
convert -colorspace rgb original.jpg 600 -quality 80 original-kleiner.jpg
3. Skalieren alle Bilder in einem Ordner
Mit diesem Skript werden alle Bilder in einem Ordner zweifach skaliert.
Dabei wird ein Ordner mit kleinen Thumbnails erzeugt und ein Ordner Images, in dem die
verkleinerten Bilder liegen. Eine gute Basis für den Webauftritt!
#!/bin/bash
# erzeugt aus Bilder images und thumbnails
# in den entsprechenden Ordnern
# usage $1 muss pfad sein
function checkUsage() {
if [ -z $1 ]; then
echo "Aufruf: $0 [input path]"
exit 1
fi
}
# Erzeugt die Ordner und konverviert alle Bilder
# @params: $1 = width $2 = pfad $3 ausgabe unterodner
# @usage: convertPics 350 pfad thumbnails
function convertPics() {
width=$1
path=$2
outpath=$path$3
# ausgabe ordner anlegen
createFolders $outpath
for bild in $(ls $path | grep jpg) ;do
#ziel=`echo $bild | sed s/.JPG/_new.JPG/`
in=${path}${bild}
out=${outpath}/${ziel}${bild}
echo $out
convert -colorspace rgb $in -thumbnail $width -quality 80 $out
done
}
function createFolders() {
if [ ! -d $1 ]; then
mkdir -p $1
fi
}
#
# main
#
checkUsage $1
path=$1
# Bilder erzeugen
convertPics 600 $path images
convertPics 100 $path thumbnails
Viel Spaß!