PDF Dateien nach Datum sortiert zusammenfügen
Hallo,
Ich bin schon seit Stunden auf der Suche, hab aber keine passende Lösung bzw. Batch für mein Problem gefunden.
Die Ausgangssituation ist folgende: Ich habe jeden Tag eine unterschiedliche Anzahl von PDF Dateien in einem Ordner, welche ich zu einem PDF Dokument zusammenfügen möchte.
Als Programm steht mir PDFTK zur Verfügung.
Die Schwierigkeit liegt bei mir darin, dass die Dateien chronologisch nach Datum sortiert werden müssen, desweiteren sind manche der PDF Dokumente bereits mehrseitig und dürfen wärend des Vorgangs nicht getrennt werden.
chronologisch sortiert bedeutet, dass die Dateien alle von einem Tag sind (meistens dem Vortag) und nach der Erstellungsuhrzeit sortiert werden müssen, wobei die erste Seite in der neuen PDF Datei auch die am frühesten erstellte einzel PDF Datei sein soll.
Tut mir Leid, ich hoffe ich habe mich nicht zu kompliziert ausgedrückt und ihr könnt mir bei meinem Problem helfen.
Vielen Dank im Voraus
MfG
Michele
Ich bin schon seit Stunden auf der Suche, hab aber keine passende Lösung bzw. Batch für mein Problem gefunden.
Die Ausgangssituation ist folgende: Ich habe jeden Tag eine unterschiedliche Anzahl von PDF Dateien in einem Ordner, welche ich zu einem PDF Dokument zusammenfügen möchte.
Als Programm steht mir PDFTK zur Verfügung.
Die Schwierigkeit liegt bei mir darin, dass die Dateien chronologisch nach Datum sortiert werden müssen, desweiteren sind manche der PDF Dokumente bereits mehrseitig und dürfen wärend des Vorgangs nicht getrennt werden.
chronologisch sortiert bedeutet, dass die Dateien alle von einem Tag sind (meistens dem Vortag) und nach der Erstellungsuhrzeit sortiert werden müssen, wobei die erste Seite in der neuen PDF Datei auch die am frühesten erstellte einzel PDF Datei sein soll.
Tut mir Leid, ich hoffe ich habe mich nicht zu kompliziert ausgedrückt und ihr könnt mir bei meinem Problem helfen.
Vielen Dank im Voraus
MfG
Michele
Please also mark the comments that contributed to the solution of the article
Content-Key: 95702
Url: https://administrator.de/contentid/95702
Printed on: April 26, 2024 at 14:04 o'clock
4 Comments
Latest comment
Ungetestet würd ichs so versuchen:
@echo off & setlocal
set "quelle=C:\QuellVerzeichnis"
set "ziel=C:\ZielVerzeichnis\Alle.pdf"
set "skiped="
FOR /F "delims=" %%i in ('Dir /B /OD "%quelle%\*.pdf"') do (
if not exist "%ziel%" copy "%quelle%\%%~nxi" "%ziel%"
set "skiped=skip=1 "
)
FOR /F "%skiped%delims=" %%i in ('Dir /B /OD "%quelle%\*.pdf"') do (
pdftk "%ziel%" "%quelle%\%%~nxi" cat output "%ziel%"
)
Hallo blackshaddow und willkommen im Forum!
miniversums Ansatz ist eigentlich völlig ok, nur kann "pdftk" nicht die selbe Datei als Quelle und Ziel verwenden - daher muss abwechselnd in eine von 2 Temp-Dateien geschrieben und aus der jeweils anderen gelesen werden. Eine Umsetzung könnte so aussehen:
Diese Version trägt auch Deinem (sinnvollen) Wunsch nach "Auslagerung" der "pdftk.exe" Rechnung.
Grüße
bastla
miniversums Ansatz ist eigentlich völlig ok, nur kann "pdftk" nicht die selbe Datei als Quelle und Ziel verwenden - daher muss abwechselnd in eine von 2 Temp-Dateien geschrieben und aus der jeweils anderen gelesen werden. Eine Umsetzung könnte so aussehen:
@echo off & setlocal
set "quelle=C:\QuellVerzeichnis"
set "ziel=C:\ZielVerzeichnis"
set "gesamt=Alle.pdf"
set "pdftk=C:\Programme\pdftk-1.12\pdftk.exe"
set "t1=%temp%\Alle1.pdf"
set "t2=%temp%\Alle2.pdf"
FOR /F "delims=" %%i in ('Dir /B /O-D "%quelle%\*.pdf"') do set "erste=%%i"
copy "%quelle%\%erste%" "%t1%">nul
if exist "%t2%" del "%t2%"
if not exist "%ziel%" md "%ziel%"
FOR /F "skip=1 delims=" %%i in ('Dir /B /OD "%quelle%\*.pdf"') do (
if exist "%t1%" (
"%pdftk%" "%t1%" "%quelle%\%%~nxi" cat output "%t2%"
del "%t1%"
) else (
"%pdftk%" "%t2%" "%quelle%\%%~nxi" cat output "%t1%"
del "%t2%"
)
)
if exist "%t1%" copy "%t1%" "%ziel%\%gesamt%">nul
if exist "%t2%" copy "%t2%" "%ziel%\%gesamt%">nul
Grüße
bastla