Benutzer:Andreas Plank/Technische Hilfe für Literaturverwaltung

Aus Open Source Ecology - Germany
Zur Navigation springen Zur Suche springen

PDF Dateien

Voraussetzung: Linuxprogramm pdftk

Alle Lesezeichen oder „Überschriften der Seitenstruktur“ aus einer PDF-Datei herauslesen:

pdftk "Langbein - 1841 - Gedichte.pdf" dump_data_utf8 | \
  grep '^BookmarkTitle\|^BookmarkPageNumber' | \
  sed --regexp-extended '/BookmarkTitle/{N; s@BookmarkTitle: @@; s@\nBookmarkPageNumber: ([0-9]+)@ (Seite \1)@; /Front Cover/d } '

Erklärung:

  • für die Datei "Langbein - 1841 - Gedichte.pdf"dump_data_utf8 alle Daten im UTF8 Format auslesen
  • grep '…' die Ausgabe gefiltert abgreifen, nur BookmarkTitle oder BookmarkPageNumber je nur am Zeilenanfang
  • sed '…' die davor gefilterte Ausgabe so umformatieren, daß Lesezeichenbezeichnung (BookmarkTitle) und Seitennummer (BookmarkPageNumber) nur in einer Zeile ausgedrückt werden
    • beim Auffinden von /BookmarkTitle/ mache folgendes {…}
      1. N; verbinde nachfolgende Zeile als 'Zeile_gefunden\nZeile_nachfolgende'
      2. s@…suche…@…ersetze…@; führe Suchersetzungen durch
      3. /Front Cover/d beim Finden von Front Cover lösche gesamte Zeilenfügung (die ja schon vorher verändert wurde: '…\n…')

Beispielergebnis:

Richard Löwenherz und Blondel  (Seite 44)
Der junge Landmann  (Seite 57)
Warnung  (Seite 70)
Die lange Predigt  (Seite 83)
Die neue Eva  (Seite 96)
Die unglücliden Bogelſteller  (Seite 110)
…