ubuntuusers.de

Hinweis: Dies ist ein statischer Snapshot unseres Wikis vom 25. März 2013 und kann daher nicht bearbeitet werden. Der aktuelle Artikel ist unter wiki.ubuntuusers.de zu finden.

exifotocopy

Dieser Artikel wurde für die folgenden Ubuntu-Versionen getestet:

./logo.png ExiFotoCopy ist eine Weiterentwicklung des photocopy-Skripts. Das Skript wurde von hannenz unter der GPL-Lizenz nach einer Spezifikation von scuba geschrieben. ExiFotoCopy wurde entwickelt, um Bilder/Fotos von einem externen Datenträger (MMC/SD) oder einer Digitalkamera auf ein anderes Speichermedium zu kopieren, zu skalieren und nach den Exif-Informationen (z.B. Aufnahmedatum) in eine Ordnerstruktur einzusortieren. So werden die Bilder/Fotos automatisch nach Aufnahmedatum/Zeit in Unterverzeichnisse sortiert. Sind keine Exif-Information vorhanden, erfolgt eine Datumsabfrage mit der Möglichkeit zur manuellen Eingabe. ExiFotoCopy erscheint als Nautilus-Skript im Kontextmenü des Dateimanagers Nautilus. Das Skript bietet eine Fortschrittsanzeige und weitreichende Konfigurationsmöglichkeiten über eine grafische Oberfläche (PyGTK) sowie interaktive Rückmeldungen über GNOME Benachrichtigungen.

Installation

Vor der Nutzung müssen folgende Pakete installiert [1] werden:

  • jhead (für das Auslesen der EXIF-Informationen aus den Bildern/Fotos)

  • zenity (optional, für die Benutzer-Interaktion z.B. Fortschrittsanzeige)

  • nautilus-script-manager (optional, für die einfache Ausführung mittels Rechtsklick)

  • pygtk (optional, um das grafische Konfigurationswerkzeug benutzen zu können (nur Lucid))

  • imagemagick (optional, um die Größe der Bilddateien anzupassen)

Wiki/Vorlagen/Installbutton/button.png mit apturl

Paketliste zum Kopieren:

sudo apt-get install jhead zenity nautilus-script-manager pygtk imagemagick 

sudo aptitude install jhead zenity nautilus-script-manager pygtk imagemagick 

Hinweis:

Wenn Zenity nicht installiert ist und das Skript über Nautilus (ohne aktives Terminal) aufgerufen wird, erfolgt keine sichtbare Interaktion. Das Skript läuft im Hintergrund und wartet auf eine Eingabe.

Das Skript selbst kann als Archiv von gnome-look.org {dl} heruntergeladen werden.

Hinweis!

Fremdsoftware kann das System gefährden.

Das Archiv exifotocopy-x.y.tar.gz in ein beliebiges Verzeichnis entpacken [2]. In das Verzeichnis wechseln, mit dem Befehl [3]

./install.sh 

wird das Skript installiert. Das eigentliche Skript sowie das Konfigurationswerkzeug werden nach ~/bin installiert (das Verzeichnis wird neu angelegt, falls es noch nicht existiert). Falls noch nicht geschehen, kann man dieses Verzeichnis dem "PATH" hinzufügen, damit man das Skript von überall aus aufrufen kann. Obwohl sich das Skript als Nautilus-Skript eher an Nutzer von grafischen Oberflächen richtet, lässt es sich auch problemlos auf Terminal-Ebene benutzen und konfigurieren:

PATH=$PATH:~/bin 

Deinstallieren

In das Verzeichnis wechseln, mit dem Befehl [3]

./install.sh uninstall 

wird das Skript restlos entfernt.

Konfiguration

Das Skript wird über eine grafische Konfigurations-Oberfläche konfiguriert. Der Konfigurator wird mit der rechten Maustaste im Kontextmenü im Menü "Skripte" mit dem Eintrag "ExiFotoCopy" ausgeführt, wenn eine Bilddatei ausgewählt ist. Die Konfigurations-Datei exifotoconfig befindet sich im ~/bin/-Verzeichnis. Der Konfigurator wird mit dem Befehl

~/bin/exifotocopy/exifotoconfig 

aufgerufen. exifotoconfig.png

Alle Parameter und Variablen werden per Tooltip angezeigt, wenn die Maus über dem entsprechenden Feld bewegt wird. Das Skript ist lokalisiert und wurde bereits ins Deutsche und Englische übersetzt. Die Konfigurations-Datei exifotocopyrc liegt im Verzeichnis ~/.exifotocopy und kann selbstverständlich auch mit einem Editor [5] manuell bearbeitet werden.

Variablen
Beschreibung Erklärung Beispiel
QuellverzeichnisDurchsucht Quellmedien nach dem QuellverzeichnisQuellverzeichnissuche über Nautilus
ZielverzeichnisDurchsucht Zielmedium nach dem ZielverzeichnisZielverzeichnissuche über Nautilus
DateierweiterungDateierweiterung der Dateien auf dem Quelldatenträger wonach ExiFotoCopy suchen solljpg, jpeg, avi, bzw. JPG, JPEG, AVI
Bei fehlendem Exif DatumFunktion bei fehlendem Exif DatumDatumseingabe über Kalender-Funktion (Fortlaufende Nummerierung empfohlen)
Tiefe der VerzeichnisstrukturDefinition der Verzeichnistiefe1, 2, 3 -fache Tiefe
Formatstring Verzeichnisebene1Parameter für die Benennung der ersten Verzeichnisebene"%Y" bei mehrfachen Ebenen oder "%Y-%m-%d" bei nur 1 Ebene siehe auch die Manpage für "date"
Formatstring Verzeichnisebene2Parameter für die Benennung der zweiten Verzeichnisebene"%B" für "Januar" oder "%m" für "01" nur 2. Ebene
Formatstring Verzeichnisebene3Parameter für die Benennung der dritten Verzeichnisebene"%d" für "12" nur 3. Ebene
Formatstring DateinameParameter für die Benennung der Bilder/Foto- Dateien"%Y_%m_%d-####" oder "%Y_%m_%d--%H.%M.%S"
Formatstring NummerierungParameter für die fortlaufende Nummerierung"%04u" fortlaufende vierstellige Nummerierung
DateierweiterungErweiterung der Dateien im ZielverzeichnisJPG, jpg, jpeg, PNG, png etc. (bei "convert" wird die Dateiart konvertiert)
Dateien werdenAuszuführende Aktion""cp"" = kopieren, ""mv" = verschieben, "convert" = skalieren oder Dateiart z.B. png
Option für KonvertierungSkalierung der Bilder/Fotos mittels ImageMagick "convert" "-resize 800x600, -resize 1024x768" bzw. "-convert, -crop, -dither, -despeckle" etc. siehe auch die Manpage für "convert"
GUI ModusAktiviert die GNOME Benachrichtigung bzw. Zenity Interaktion mit eigener AnzeigeBenachrichtigung im eigenen Fenster oder Gnome-Benachrichtigung
Logdateidefiniert den Speicherort für die Logdatei"/dev/null" = Kein Logging

Für weitere Parameter zu "convert" siehe die Manpage für "convert", für weitere Parameter zum Datum siehe die Manpage für "date".

Nachdem alle Einstellungen vorgenommen wurden, wird der Skript mit der Schaltfläche "Ausführen" ausgeführt.

Funktion

Das Skript sucht im ersten Schritt nach allen Dateien in den angegebenen Verzeichnissen und Unterverzeichnissen mit den in der Konfiguration angegebenen Dateierweiterung ( *.jpg, *.jpeg, *.avi). Anschließend werden die Exif-Informationen mittels JHead aus den Dateien ausgelesen (bei .avi wird der Zeitstempel verwendet). Sollten die Exif-Informationen nicht ausgelesen werden können, erfolgt - je nach Einstellung - eine manuelle Datumsabfrage oder es wird der Zeitstempel der Datei verwendet. Mittels der so gewonnen Datumsinformationen werden die Zielordner in dreifacher Tiefe (1-3 Ebenen) angelegt. Abschließend werden die Dateien in das angelegte Verzeichnis hinein kopiert/verschoben, umbenannt und auf Wunsch mittels "convert" (siehe in der Manpage für "convert") skaliert oder konvertiert.

Hinweis:

Das Konvertieren von Videodateien (z.B. AVI) kann einige Zeit und Rechenleistung in Anspruch nehmen. Es wird empfohlen, Videodaten nur zu kopieren/verschieben und nicht zu konvertieren, oder im Feld "Dateierweiterung" der Quelldateien die Erweiterung AVI zu entfernen und Videodateien manuell von dem Quellmedium zu kopieren/verschieben.

Alternativen

ubuntuusers.local › WikiSkripteexifotocopy