Lightroom: Keywords aus Textdatei zu RAW-Bildern hinzufügen (XMP-Datei)

Diese Frage wurde hier allgemein beantwortet: https://photo.stackexchange.com/a/38507/9913

In meinem Fall habe ich Hunderte von Rohbild-XMP-Dateien in verschiedenen Ordnern, denen ich Schlüsselwörter hinzufügen (nicht möglicherweise vorhandene ersetzen) möchte, die in einer Textdatei enthalten sind. Diese Textdatei hat 2 Spalten:

vollständiger Pfad/Dateiname TAB-Schlüsselwort(e), durch Kommas getrennt

Ich bin mir sicher, dass dies mit exiftool möglich ist. Aber wie?

Jemand hat dies sicherlich schon einmal getan, also hoffe ich, dass jemand die funktionierende Befehlszeile für exiftool teilen wird.

Danke für Ratschläge und Feedback.

Antworten (1)

Ich glaube, Ihre CSV-Datei muss ein paar Änderungen vornehmen. Erstens glaube ich nicht, dass Exiftool eine tabulatorgetrennte CSV-Datei lesen wird. Die Dokumente scheinen nur durch Kommas getrennt zu sein. Sie könnten in Excel oder OpenOffice mit gesetztem Tab-Trennzeichen importieren und eine neue CSV-Datei exportieren, die für Exiftool lesbar sein sollte.

Zweitens muss die erste Zeile Spaltenüberschriften haben, die die Tags angeben, die Sie importieren möchten. Die erste Spalte muss SourceFile sein. Ihre zweite Spalte könnte Keywords (für IPTC:Keywords) oder Subject (für XMP:Subject) sein. Ich würde Subjekt vorschlagen, da dies der modernere Standard ist. Ich glaube, LR wird beides lesen und beides schreiben.

Danach sollte der Befehl so aussehen:
Exiftool -sep ", " -csv=/path/to/file.csv /path/to/target/files
Wenn sich die Dateien in mehreren Verzeichnissen befinden, fügen Sie diese Verzeichnisse einfach hinzu. Sie können rekursiv hinzufügen -r. Exiftool sollte nur diese Dateien in der CSV-Datei verarbeiten und sind in den Befehlszeilenverzeichnissen enthalten.

Die -sepOption gibt den Wert an, der verwendet werden sollte, um jedes Element der Schlüsselwörter zu trennen.

Weitere Lektüre
der Exiftool-Dokumentation auf -csv
Exiftool FAQ 26, Wie importiere ich Informationen aus einer Datenbank?

Vielen Dank. Ich habe die FAQs gelesen. Vorhandene XMP-Dateien enthalten durch Kommas getrennte Schlüsselwörter im Feld XMP:Betreff. In der CSV-Datei ist es einfach, die TABs durch ein Komma oder einen Doppelpunkt zu ersetzen. In Bezug auf die Quelldatei: Meinst du die XMP- oder die Bilddatei? Aus meiner Sicht ist die Quelldatei die TXT-Datei, die den vollständigen Pfad der XMP-Datei (Ziel) im 1. enthält. Spalte und den Wert (Keyword) in der 2.Spalte, den exiftool in das Feld XMP:Subject der jeweiligen Zieldatei in der 1.Spalte einfügen soll. Warum brauche ich also '/path/to/target/files'?
>In der CSV-Datei ist es einfach, die TABs durch ein Komma oder einen Doppelpunkt zu ersetzen. Tut mir leid, ich stelle Vermutungen zu Ihrer CSV-Datei an. Damit Exiftool sie lesen kann, muss die zweite Spalte in Anführungszeichen gesetzt werden. Das haben Sie in Ihrem Beispiel nicht erwähnt, weshalb ich den Import/Export vorgeschlagen habe. Genauer gesagt muss die CSV-Datei so aussehenSourceFile,Subject c:\path\to\image.jpg,"keyword 1, keyword 2, keyword 3"
Was die Notwendigkeit von /path/to/target/files betrifft, aus den Dokumenten „Beim Importieren aus einer CSV-Datei werden nur Dateien verarbeitet, die in der Befehlszeile angegeben sind. Alle zusätzlichen Einträge in der CSV-Datei werden ignoriert.“ Ich glaube, das bedeutet, dass, wenn Sie beispielsweise in Ihrer CSV-Datei einen Dateipfad haben, /path/to/target/files/image.jpg und /path/to/other/files/image2.jpg und nur /path/to ist /target/files/ in Ihrer Befehlszeile, image2.jpg wird nicht verarbeitet.
Danke noch einmal. Keine Sorge um die CSV-Bearbeitung. Ich werde anfangen, dies herauszufinden. Ich bin mir sicher, dass Exiftool in der Lage ist, den Zielpfad und die zugehörigen Werte alle aus einer TXT-Datei zu entnehmen und dann die Werte in die entsprechende XMP-Datei zu schreiben. Ich werde zurück posten, sobald ich die Lösung habe (kann einige Zeit dauern).