(viele) PDF Dateien gleichzeitig umbenennen

mmmm1345

Newbie
Registriert
Jan. 2016
Beiträge
3
Hallo,

ich suche ein Programm das (viele) PDF Dateien gleichzeitig nach den ersten Wörtern des Inahlts (der Überschrift) benennen kann.
Es handelt sich um etwa 1000 Dateien die alle einen nichtssagenden Name haben.
Habe bei meinen recherchen bislang nichts gefunden, wäre also nett wenn jemand eine Idee hätte oder ein Programm kennt das sowas kann. :)

MfG
 
hier stand mist ... sorry
 
mmmm1345 schrieb:
Hallo,
ich suche ein Programm das (viele) PDF Dateien gleichzeitig nach den ersten Wörtern des Inhalts (der Überschrift) benennen kann.
Du suchst also eigentlich ein Programm, welches die PDFs öffnet, einige Wörter ausliest und dann die Datei danach umbenennt ?
Wie sind denn die Datei entstanden bzw. erstellt worden ? Evtl. kommt man ja aus der Richtung irgendwie weiter...
 
Sofern die PDF Dateien nicht vorab so erstellt wurden, dass diese wirklich Wörter enthalten, statt "Bilder" des geschriebenen, wird das sehr, sehr schwierig.
Dazu evtl. mal zum Thema OCR einlesen.
 
Ich wuerde ein Bash Skript verwenden. So bekommt man z.B. die erste Zeile von my.pdf mit Unterstrichen statt Leerzeichen:
Code:
echo $(pdftotext -f 1 -l 1 my.pdf - | head -n 1 | sed 's/ /_/g').pdf
Das kann man dann noch mit `mv` und einer Schleife kombinieren.

Beispielausgabe:
Code:
$ echo $(pdftotext -f 1 -l 1 chemie_i_01.pdf - | head -n 1 | sed 's/ /_/g').pdf
Übung_zur_Vorlesung_Chemie_I_für_Informatiker_und_Physiker.pdf
 
Danke erstmal an alle für die Hilfe :)

piepenkorn schrieb:

die können leider alle nur Teile der Dateieigenschaften nutzen oder durchnummerieren.
den Inhalt einzulesen scheint wohl nicht so einfach zu sein

Garrymatze schrieb:
Du suchst also eigentlich ein Programm, welches die PDFs öffnet, einige Wörter ausliest und dann die Datei danach umbenennt ?
Wie sind denn die Datei entstanden bzw. erstellt worden ? Evtl. kommt man ja aus der Richtung irgendwie weiter...

die Dateien sind sachbücher von springer
leider heißen die alle nur "article"

Traumzauberbaum schrieb:
Sofern die PDF Dateien nicht vorab so erstellt wurden, dass diese wirklich Wörter enthalten, statt "Bilder" des geschriebenen, wird das sehr, sehr schwierig.
Dazu evtl. mal zum Thema OCR einlesen.

der Inhalt ist schon als Text gespeichert den man auch markieren und kopieren kann


meribold schrieb:
Ich wuerde ein Bash Skript verwenden. So bekommt man z.B. die erste Zeile von my.pdf mit Unterstrichen statt Leerzeichen:
Code:
echo $(pdftotext -f 1 -l 1 my.pdf - | head -n 1 | sed 's/ /_/g').pdf
Das kann man dann noch mit `mv` und einer Schleife kombinieren.

Beispielausgabe:
Code:
$ echo $(pdftotext -f 1 -l 1 chemie_i_01.pdf - | head -n 1 | sed 's/ /_/g').pdf
Übung_zur_Vorlesung_Chemie_I_für_Informatiker_und_Physiker.pdf

bekomme das leider irgendwie nicht zum laufen :(
da kommt immer nur folgende Meldung:
"Der Befehl "head" ist entweder falsch geschrieben oder
konnte nicht gefunden werden."
muss aber auch dazu sagen dass ich mich damit absolut nicht auskenne
 
Ich kenne HEAD - aber nur als Extra-Programm das ich damals DOS zufüttern musste. Es ist (wie z.B. auch TAIL) nicht Teil des »Wortschatzes« von CMD.
Du könntest es aber ergooglen (auf 32/64-bit achten). Die Idee an sich ist gut; allerdings sagt mit SED nichts, damit dürfte es sich genauso verhalten es ergooglen zu müssen. Wie du dann aber aus der Ausgabe sinnfällig einen Dateiname fischen willst will mir nicht einfallen. Ich hantierte selbst mit diesem Grundkonzept, aber das waren Inhalte von immer identischen HTMs die ich durch VBA schleusen konnte. Wenn dir wirklich nur ein Teil der Überschrift reicht und diese nicht in der ersten sondern einer späteren Zeile des Codes der PDF steckt könnte VBA in der Tat ein Ansatz sein.

CN8
 
mmmm1345 schrieb:
bekomme das leider irgendwie nicht zum laufen :(
da kommt immer nur folgende Meldung:
"Der Befehl "head" ist entweder falsch geschrieben oder
konnte nicht gefunden werden."
muss aber auch dazu sagen dass ich mich damit absolut nicht auskenne

Falls du das jetzt mit cmd.exe versucht hast: es ist Bash code, also fuer die shell, die man z.B. typischerweise unter GNU/Linux und OS X verwendet. Geht vielleicht auch mit Cygwin oder msys2 unter Windows. Vielleicht kann man sowas mit anderer Syntax mittlerweile auch mit Windows PowerShell machen. Keine Ahnung.
 
meribold schrieb:
Code:
$ echo $(pdftotext -f 1 -l 1 chemie_i_01.pdf - | head -n 1 | sed 's/ /_/g').pdf
Übung_zur_Vorlesung_Chemie_I_für_Informatiker_und_Physiker.pdf
Chemie für Informatiker? :D
Wiederholt ihr da noch mal den Mittelstufenstoff? ;)
 
Zurück
Oben