DSLR-Forum Anzeige

Zurück   DSLR-Forum > Technik und Gestaltung > Bildbearbeitung > Computerecke

Hinweise

Anzeige

Antwort
 
Themen-Optionen Ansicht
Alt 25.08.2019, 01:47   #1
jtf
Benutzer
 
Registriert seit: 15.06.2010
Beiträge: 10
Standard mit Exiftool protokollieren

Werbung


Zu viel Werbung?
Hier kostenlos bei DSLR-Forum.de registrieren!
Hallo.
Ich habe eingescante Dia, von denen ich einige drehen, spiegeln, umbenennen usw. will. Das will ich aber alles protokollieren, so dass später noch erkennbar ist, wo und wie herum ein Dia ursprünglich im Magazin lag.

Ich habe jetzt nur den Ansatz, über eine Batch-Datei die Exif-Informationen 1. zu setzen (die Scans haben ja keine Orientierungsdaten), das zu protokollieren, dann zu drehen, spiegeln usw. und dann wieder protokollieren.
Das klappt bislang aber nur, wenn ich 2 Dateien anlege. Also vorher mit:
Code:
exiftool -T -r -filename -orientation ...  %* > %*_%DATUM_A%_A.csv
(das Datum ist das aktuelle Datum und Uhrzeit)

Dann drehe ich und mache wieder
Code:
exiftool -T -r -filename -orientation ...  %* > %*_%DATUM_A%_B.csv
Ich würde die Protokollierung gerne auf eine Datei beschränken und alle Veränderungen an die Datei anfügen. Zumal wenn ich öfters drehen muss und jedesmal 2 Dateien angelegt werden. Doch bislang kann ich die Datei mit dem genannten Befehl nur überschreiben (daher die Uhrzeit in meiner Lösung, so dass es eine Unterscheidung gibt).

Wie kann ich also exiftool dazu bekommen, die csv oder txt zu ergänzen, statt jedesmal neu anzulegen.
Alternativ:
Wie kann ich den genannten exiftool-Befehl auf Batch-Ebene in eine Datei umleiten? Einfach schreiben
Code:
>> text.txt
geht nicht.

Danke
jtf ist offline   Mit Zitat antworten
Alt 25.08.2019, 02:48   #2
m@sche
Benutzer
 
Registriert seit: 10.04.2019
Beiträge: 28
Standard AW: mit Exiftool protokollieren

Zitat:
Zitat von jtf Beitrag anzeigen
Hallo.

Wie kann ich also exiftool dazu bekommen, die csv oder txt zu ergänzen, statt jedesmal neu anzulegen.
Alternativ:
Wie kann ich den genannten exiftool-Befehl auf Batch-Ebene in eine Datei umleiten? Einfach schreiben
Code:
>> text.txt
geht nicht.

Danke

Code:
echo vorher > text.txt
erzeugt die Datei text.txt,

Code:
echo nachher >> text.txt
hängt an die Datei text.txt an.

Das funktioniert bei Windows (*.bat), Linux, Unix, MAC-OSX shells nach der gleichen Syntax.
m@sche ist offline   Mit Zitat antworten
Alt 25.08.2019, 02:50   #3
Georgius
Super-Moderator
 
Registriert seit: 21.12.2003
Ort: Mödling bei Wien
Beiträge: 10.671
Standard AW: mit Exiftool protokollieren

Hab dunkel ein >> fürs abhängen in Erinnerung
__________________
Georgius

Bevor ich mich jetzt aufrege, ist es mir lieber egal ...

Ausrüstung siehe Profil - Bilder dürfen bearbeitet und wieder eingestellt werden.

Moderatorenbeiträge sind Grün Alle anderen Beiträge sind nur meine Privatmeinung

Stammtisch der Wiener Bagasch
Georgius ist gerade online   Mit Zitat antworten
Alt 25.08.2019, 04:10   #4
jtf
Benutzer
 
Threadstarter
 
Registriert seit: 15.06.2010
Beiträge: 10
Standard AW: mit Exiftool protokollieren

Hallo.
Danke, das mit dem Anhängen an eine Datei klappt. Nur leider schreibt er mir den Befehl in die Datei rein, und nicht die Werte. Ich möchte ja die Exif-Werte protokollieren, und nicht den dazugehörigen Befehl.

Muss ich wohl versuchen die Werte aus dem Exiftool-Befehl in Variabeln zu packen und die dann als Datei schreiben?
jtf ist offline   Mit Zitat antworten
Werbung
Zu viel Werbung? Hier kostenlos bei DSLR-Forum.de registrieren!
Alt 25.08.2019, 11:44   #5
Georgius
Super-Moderator
 
Registriert seit: 21.12.2003
Ort: Mödling bei Wien
Beiträge: 10.671
Standard AW: mit Exiftool protokollieren

Bitte den genauen Befehl und das Ausgabefile
__________________
Georgius

Bevor ich mich jetzt aufrege, ist es mir lieber egal ...

Ausrüstung siehe Profil - Bilder dürfen bearbeitet und wieder eingestellt werden.

Moderatorenbeiträge sind Grün Alle anderen Beiträge sind nur meine Privatmeinung

Stammtisch der Wiener Bagasch
Georgius ist gerade online   Mit Zitat antworten
Alt 25.08.2019, 14:22   #6
jtf
Benutzer
 
Threadstarter
 
Registriert seit: 15.06.2010
Beiträge: 10
Standard AW: mit Exiftool protokollieren

Hallo. Danke dass Ihr Euch Gedanken dazu macht.
Die Lösung ist wohl so:
Code:
exiftool -T -r -filename -orientation %* >> %*_prot.txt
Also ohne echo davor. Die Ausgabedatei von Exiftool, die noch im ersten Ansatz stand, wird gelöscht und stattdessen die umleitung auf die TXT-geschrieben.

Die Langform:
Ich arbeite mit Windows 10 und dem Programm ThumbsPlus (besonders weil Thumbs sehr gut mit MS Access zusammenarbeitet, wodurch sich weitere Möglichkeiten ergeben, Probleme zu lösen )
In Thumbs markiere ich eine Datei, die ich drehen oder spiegeln will. Der Dateiname wird an die Batch mit %* übergeben.

Code:
exiftool -T -r -filename -orientation %* >> %*_prot.txt
(tatsächlich schreibe ich noch weitere Infos in die Datei)

Dann drehe ich. In der Batch wähle ich zuerst aus, wie ich drehen/spiegeln will (Zahl 1-8 entsprechend der Exif-Möglichkeiten)
Code:
set /p asw="Bitte Auswahl eingeben: "
exiftool -overwrite_original -n -orientation=%asw% %* -r
Danach protolliere ich erneut und fertig:
Code:
exiftool -T -r -filename -orientation %* >> %*_prot.txt
Das dauert zwar sehr lange, bis Exiftools das alles umsetzt, aber das liegt wohl eher am lahmen Rechner oder Windows.
ThumbsPlus hätte auch interne Befehle zum spiegeln usw., die schneller laufen, aber da weiß ich nicht wie ich die protokollieren kann (ohne in Access was zu basteln, was dann auch wieder in der Ausführung lange dauern könnte).

Aber diese Lösung reicht mir ersteinmal. Was noch nicht klappt ist, das in einer Schleife für mehrere markierte Dateien laufen zu lassen. Aber ds müsste hinzukriegen sein. DANKE!
jtf ist offline   Mit Zitat antworten
Alt 25.08.2019, 17:40   #7
jtf
Benutzer
 
Threadstarter
 
Registriert seit: 15.06.2010
Beiträge: 10
Standard AW: mit Exiftool protokollieren

Hallo nochmals. Das mit der Schleife stellte sich doch noch als Problem dar. Falls hier ein Schleifenspezi ist:
Mein Code wird mehrfach auf eine Datei angewendet, je nachdem, wieviel Dateien ich an die Batch übergebe. Und ich weiß nicht, wo ich die Schleife abbrechen soll, ohne auf die Funktionen danach zu verzichten.
Ich mache folgendes:
1. Da die Datei von Thumbs mit vollem Pfad und Anführungsstrichen übergeben wird, zerfleddere ich das ersteinmal:

Code:
Setlocal EnableDelayedExpansion
for %%i in (%*) do (
set bild_alles=%%i
set bild_name=%%~ni
set bild_ende=%%~xi
set bild_laufwerk=%%~di
set bild_pfad=%%~pi

set "protname=%%~nxi"
set protname2="!protname:.=_!_prot.txt"
(ich ersetze noch den Punkt im Dateinamen für den Protokollnamen durch einen Unterstrich)

Dann muss ich prüfen, ob es die Datei schon gibt:

Code:
IF EXIST !protname2! (
  ECHO !protname2! ist vorhanden
) ELSE (
  ECHO !protname2! existiert nicht, wird erzeugt
  copy /y nul !protname2!
)
Jetzt kommen die Befehle wie gehabt:
Code:
set /p asw="Bitte Auswahl eingeben: "

exiftool -T -r -filename -orientation  %* >> !protname2!
exiftool -overwrite_original -n -orientation=%asw% %* -r
exiftool -T -r -filename -orientation  %* >> !protname2!
)
)
Ergebnis: Die Werte werden (bei zwei markierten Bilddateien) doppelt (bzw. 4x da ich ja 2x protokolliere) in die Protokolldatei eingetragen. Auch in der DOS-Ausgabe wird gezeigt, dass der Befehl auf jedes Bild jeweils doppelt ausgeführt wird ("2 image files updated").

Wenn ich die Klammer der Schleife früher setze, wird nur 1 Bild protokolliert.
Wo ist der Fehler?
jtf ist offline   Mit Zitat antworten
Alt 25.08.2019, 21:50   #8
Georgius
Super-Moderator
 
Registriert seit: 21.12.2003
Ort: Mödling bei Wien
Beiträge: 10.671
Standard AW: mit Exiftool protokollieren

Irgendwie sehe ich eine ) zu viel. Oder ich bin blind.
__________________
Georgius

Bevor ich mich jetzt aufrege, ist es mir lieber egal ...

Ausrüstung siehe Profil - Bilder dürfen bearbeitet und wieder eingestellt werden.

Moderatorenbeiträge sind Grün Alle anderen Beiträge sind nur meine Privatmeinung

Stammtisch der Wiener Bagasch
Georgius ist gerade online   Mit Zitat antworten
Alt 25.08.2019, 22:48   #9
m@sche
Benutzer
 
Registriert seit: 10.04.2019
Beiträge: 28
Standard AW: mit Exiftool protokollieren

Zitat:
Zitat von jtf Beitrag anzeigen
Mein Code wird mehrfach auf eine Datei angewendet, je nachdem, wieviel Dateien ich an die Batch übergebe. Und ich weiß nicht, wo ich die Schleife abbrechen soll, ohne auf die Funktionen danach zu verzichten.
Ich mache folgendes:
1. Da die Datei von Thumbs mit vollem Pfad und Anführungsstrichen übergeben wird, zerfleddere ich das ersteinmal:

Code:
...
exiftool -T -r -filename -orientation  %* >> !protname2!
exiftool -overwrite_original -n -orientation=%asw% %* -r
exiftool -T -r -filename -orientation  %* >> !protname2!
)
)
Ergebnis: Die Werte werden (bei zwei markierten Bilddateien) doppelt (bzw. 4x da ich ja 2x protokolliere) in die Protokolldatei eingetragen. Auch in der DOS-Ausgabe wird gezeigt, dass der Befehl auf jedes Bild jeweils doppelt ausgeführt wird ("2 image files updated").

Wenn ich die Klammer der Schleife früher setze, wird nur 1 Bild protokolliert.
Wo ist der Fehler?

Die Schleifenvariable ist %%i, also sollte m.E. der Aufruf von exiftool in der Scheife so aussehen:

Code:
exiftool -T -r -filename -orientation  %%i >> !protname2!
exiftool -overwrite_original -n -orientation=%asw% %%i -r
exiftool -T -r -filename -orientation  %%i >> !protname2!
Die letzte *Klammer-zu* ist auch zu viel.

Geändert von m@sche (25.08.2019 um 22:50 Uhr)
m@sche ist offline   Mit Zitat antworten
Alt 26.08.2019, 03:35   #10
jtf
Benutzer
 
Threadstarter
 
Registriert seit: 15.06.2010
Beiträge: 10
Standard AW: mit Exiftool protokollieren

Zitat:
Zitat von m@sche Beitrag anzeigen
Die Schleifenvariable ist %%i
Das war es.
Und die letzte Klammer in der Tat war auch zu viel. Ich dachte Batches sind da gnadenlos und laufen gar nicht, wenn da etwas nicht stimmig ist.
DANKE DANKE DANKE.
Problem ist gelöst!
jtf ist offline   Mit Zitat antworten
Antwort


Zurück   DSLR-Forum > Technik und Gestaltung > Bildbearbeitung > Computerecke
Themen-Optionen
Ansicht

Nutzungsbedingungen
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.

Gehe zu




Das könnte Dich auch interessieren:

Alle Zeitangaben in WEZ +2. Es ist jetzt 19:34 Uhr.

Anzeige


* * *

Zu viel Werbung?
Kostenlos registrieren!

* * *

Anzeige

Powered by vBulletin® Version 3.8.7 (Deutsch)
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.
Copyright ©2003 - 2019, DSLR-Forum.de
Akzeptieren

Diese Website verwendet Cookies. Durch die Nutzung dieser Webseite erklärst Du Dich damit einverstanden, dass Cookies gesetzt werden. Falls du mit unserer Verwendung von Cookies nicht einverstanden bist, so ändere bitte die Cookie-Einstellungen in deinem Browser oder verlasse unsere Website. Mehr erfahren