Batch Teil des Dateinamens einer pdf-Datei als Titel der pdf-Datei zuweisen
Hallo zusammen,
ich möchte gerne einen Teil des Namens einer pdf-Datei selbiger als Titel zuweisen. Tiel ist, anhand des Titels sortieren können.
Der Name der pdfs folgt konsequent einer Schablone etwa in der Art:
bwa_arg_df_2_xyz_A_2.pdf
wobei der Abschnitt 'xyz' zum Titel der pdf gemacht werden soll.
in
Batch Teile des Dateinamen auslesen
ist eine einigermaßen vergleichbare Aufgabe gelöst, wo ein Abschnitt aus dem Dateinamen als Verzeichnisname verwendet wird.
auf
http://compgroups.net/comp.text.pdf/batch-update-pdf-titles-from-text-f ...
wird pdftk für das update des pdf-Titels verwendet, allerdings muß zuvor eine Steuerdatei gebastelt werden, die alten und neuen Dateinamen beinhaltet.
(Mir scheint, dass in der Zeile
"for "/F "tokens=1,2 delims= " %%j in (this.dat) do (
" die Zeichen "1," ein falsches Ergebnis verursachen und entfallen müssen.)
der token "xyz" müßte also mit InfoValue: %%j in eine this.info geschrieben werden und anschließend mit pdftk zugewiesen werden.
Alternativ zum Durch-Arbeiten eines ganzen Verzeichnisses fände ich das Auslösen des Befehl via Explorer/rechte Maustaste noch eleganter.
Kann mir da jemand weiterhelfen?
Schönen Dank schon mal!
Stoppel
ich möchte gerne einen Teil des Namens einer pdf-Datei selbiger als Titel zuweisen. Tiel ist, anhand des Titels sortieren können.
Der Name der pdfs folgt konsequent einer Schablone etwa in der Art:
bwa_arg_df_2_xyz_A_2.pdf
wobei der Abschnitt 'xyz' zum Titel der pdf gemacht werden soll.
in
Batch Teile des Dateinamen auslesen
ist eine einigermaßen vergleichbare Aufgabe gelöst, wo ein Abschnitt aus dem Dateinamen als Verzeichnisname verwendet wird.
auf
http://compgroups.net/comp.text.pdf/batch-update-pdf-titles-from-text-f ...
wird pdftk für das update des pdf-Titels verwendet, allerdings muß zuvor eine Steuerdatei gebastelt werden, die alten und neuen Dateinamen beinhaltet.
(Mir scheint, dass in der Zeile
"for "/F "tokens=1,2 delims= " %%j in (this.dat) do (
" die Zeichen "1," ein falsches Ergebnis verursachen und entfallen müssen.)
der token "xyz" müßte also mit InfoValue: %%j in eine this.info geschrieben werden und anschließend mit pdftk zugewiesen werden.
Alternativ zum Durch-Arbeiten eines ganzen Verzeichnisses fände ich das Auslösen des Befehl via Explorer/rechte Maustaste noch eleganter.
Kann mir da jemand weiterhelfen?
Schönen Dank schon mal!
Stoppel
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 183815
Url: https://administrator.de/contentid/183815
Ausgedruckt am: 22.11.2024 um 12:11 Uhr
18 Kommentare
Neuester Kommentar
Hallo stoppel70 und willkommen im Forum!
Etwa so:
Dieser Batch lässt sich per Drag & Drop oder zB im "SendTo"-Ordner verwenden - zum Erstellen eines Kontextmenüeintrages siehe da ...
Grüße
bastla
Etwa so:
@echo off & setlocal
for /f "tokens=5 delims=_" %%i in ("%~1") do (
echo InfoKey: Title
echo InfoValue: %%i
)>%temp%\this.info
move %1 %temp%\PDF.tmp
pdftk %temp%\PDF.tmp update_info %temp%\this.info output "%~1"
Grüße
bastla
Hallo stoppel70!
Grüße
bastla
Kurze Frage noch: wodurch regelst du, welcher Abschnitt des Dateinamens verarbeitet wird?
Den muß ich für meinen Bedarf mglw. noch anpassen. Ich vermute es ist der ..."tokens=5"...?!
So isses ...Den muß ich für meinen Bedarf mglw. noch anpassen. Ich vermute es ist der ..."tokens=5"...?!
Die sollte wieder gelöscht werden
Mach nur (obwohl: ob die im Temp-Ordner herumliegt oder nicht - und beim nächsten Mal wird sie ohnehin überschrieben); abgesehen davon sind es zwei Dateien ... Grüße
bastla
Hallo stoppel70!
Zur Fehlersuche solltest Du außerdem in Zeile 1 "
Grüße
bastla
Ich habe mal versucht, das Original als .pdf zu verschieben und nicht wie vorgeschlagen als .tmp (Zeile 6). Vielleicht mag ja pdftk keine .tmp-Dateien verarbeiten.
Bei meinen Tests war das kein Problem.Hast du eine Idee, wo es hakt?
Wo hat Du die "pdftk.exe" gespeichert? Falls der Ordner nicht in der %path%
-Liste enthalten ist, in der letzten Zeile anstatt nur "pdftk" auch den vollen Pfad angeben ...Zur Fehlersuche solltest Du außerdem in Zeile 1 "
echo on
" verwenden und den Batch aus der CMD-Shell starten (oder noch "pause
" als Zeile 8 hinzufügen).Grüße
bastla
Hallo stoppel70!
Grüße
bastla
Vermute mal, dass es sich um ein Versionsproblem von pdftk handeln könnte.
Das könnte sein - ich habe mit 1.41 (erfolgreich) getestet - wenn Du das nachvollziehen möchtest, findest Du hier den Download ...Grüße
bastla