construct object
Home sweet home
Nav
hide
S1
S2
S3
Name: abgleichPhotosH1080
Typ: bash
benötigt: convert (Teil von ImageMagick)

Die Datei abgleichPhotosH1080 reduziert alle Bilder eines Verzeichnisses rekursiv auf eine Höhe von 1080 px. Die Verzeichnisstruktur wird beibehalten. Das Ergebnis landet in einem im Script fest angegebenen Ordner.
Es handelt sich um einen Abgleich, da vorhandene Dateien nicht überschrieben werden. Hat die Ausgangsdatei eine geringere Höhe, so wird nicht konvertiert sondern kopiert.

Eine Gewähr auf korrekte Funktion wird nicht gegeben, sie sollten also noch ein Backup der Daten haben.

Das Script muss auf die lokalen Bedürfnisse angepasst werden

Der Quelltext:

hide
abgleichPhotosH1080
#!/bin/bash
echo "Uebergabe eines Verzeichnisnamens, die Inhalte werden in 1080er Hoehe"
echo "konvertiert und in /home/roemke/EigeneDateien/Bilder/photosH1080 abgelegt"
newsize=1080
if [[ $# -lt 1 ]]
then
		echo -n "Verzeichnis: " 
		read verz
else 
    verz=$1
fi
echo "Verzeichis: $verz"
for i in $(find $verz -type f -iname  "*jpg" | tr ' ' '\1')
do 
  file=$(echo $i | tr '\1' ' ')
  odir=${file%/*}
  ddir="/home/roemke/EigeneDateien/Bilder/photosH1080/"${file%/*}
  file=${file##*/}
  if [[ ! -d $ddir ]]
  then 
       mkdir -p "$ddir"
  fi
  dfile=$ddir"/"$file
  ofile=$odir"/"$file
  if [[ ! -f $dfile ]]
  then
    hoehe=$(identify -format "%h" "$ofile")
    if [[ hoehe -lt newsize ]]
    then 
      cp "$ofile" "$dfile"
    else 
      convert -verbose -resize x$newsize "$ofile" "$dfile"
    fi  
  fi
 
done
 
 
Parsed using GeSHi 1.0.8.6
Download / View Source / Run it   (depends on file type)

Karsten Römke (k Ponkt roemke at gmx in de), Rechtliches, Datenschutz, etc.
Rein private Seite, lediglich eine Spielerei
Last modified: -
Created: 2014-01-01
Reason: schnelleres laden von Fotos durch RaspBerry PI
Home sweet home