tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
2
ZUGRIFFE
674
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Avatar von _opiWahn_
    _opiWahn_ _opiWahn_ ist offline Mitglied Bronze
    Registriert seit
    Jan 2011
    Ort
    zw. KL und MA
    Beiträge
    39
    Hallo,

    ich muß regelmäßig aus mehrere PDF-Files die Textbestandteile herausfiltern.
    Hierbei leistet mir die kleine Konsolenanwendung "pdftotext" aus dem xpdf-Paket sehr gute Dienste - soweit es sich um eine überschaubare Anzahl von Dateien handelt.
    Da die Anzahl der Dateien jedoch steigt möchte ich diesen Prozess nun mittels (Bat)ch "halbwegs" automatisieren.
    Leider stecke ich aber schon im kleinen Ansatz fest:
    PHP-Code:
    pause
     
    for %%f in d:/\A/\*.pdf do 
     
    call pdftotext -layout "%%f" d:/\C/\"%%f".txt
     move  
    "%%f" d:/\B/\
    pause 
    Die / sollen natürlich \ sein, aber das ist zwischen den PHP-Tags wohl nicht anders darstellbar

    Die korekte Syntax für die Einzelverarbeitung (soweit die Dateien sich im gleichen Verzeichnis befinden) lautet: pdftotext -layout dateiname.pdf. Die generierte Textdatei wird, wenn nicht anders angeben im gleichen Verzeichnis und dem gleichen dateiname.txt gespeichert.

    Was ich nun erreichen möchte ist:
    - Im Verzeichnis A nachschauen ob es Dateien des Typs PDF gibt und diese nacheinander an das Konsolenprogramm übergeben (ggf. Meldung wenn fertig o. Verz. leer)
    - die generierte Textdatei nach Verzeichnis C ausgeben (kein Problem)
    - die verarbeitete PDF an Verzeichnis B verschieben.

    Ich hoffe sehr, daß mir hierbei jemand auf die Sprünge helfen kann

    Grüße
    _opiWahn_
    Geändert von _opiWahn_ (16.04.11 um 22:46 Uhr)
     

  2. #2
    Avatar von _opiWahn_
    _opiWahn_ _opiWahn_ ist offline Mitglied Bronze
    Registriert seit
    Jan 2011
    Ort
    zw. KL und MA
    Beiträge
    39
    ... wäre dann mal einen Schritt weitergekommen:
    Code :
    1
    2
    3
    4
    5
    6
    
    pause
    echo off
     for %%f in (*.pdf) do (pdftotext -layout %%f)
     move *.pdf ./edited/
     move *.txt ./converted/
    pause

    Das Konvertieren geht jetzt, aber wie bekomme ich die Befehlsverkettung hin?
    Die Dateien sollen gleich nach der Verarbeitung verschoben werden!
    Evtl. müßte wohl noch ein Errorlevel eingebaut werden, damit nicht auch die unverarbeiteten weg sind.
    Von Errorlevel hab ich aber gleich gar keinen Plan
    /edited und /converted sind Unterverzeichnisse vom Hauptverzeichnis in dem auch die PDF's und die bat liegen (alles auf dem gleichen LW)
    Geändert von _opiWahn_ (17.04.11 um 12:29 Uhr)
     

  3. #3
    deepthroat deepthroat ist offline Mitglied Diamant
    tutorials.de Premium-User
    Registriert seit
    Jun 2005
    Beiträge
    8.169
     
    If at first you don't succeed, try again. Then quit. No use being a damn fool about it.

Ähnliche Themen

  1. Batch - bestimmtes Datum für alle Dateien mit gleichen Namen
    Von rkrause787878 im Forum Sonstige Sprachen
    Antworten: 5
    Letzter Beitrag: 02.12.10, 15:32
  2. Batch - bestimmtes Datum für alle Dateien mit gleichen Namen
    Von rkrause787878 im Forum Sonstige Sprachen
    Antworten: 0
    Letzter Beitrag: 29.11.10, 19:40
  3. Alle Dateien eines Ordners auslesen
    Von -GS-Master im Forum PHP
    Antworten: 18
    Letzter Beitrag: 17.02.07, 15:16
  4. Dateien ans laufende Programm übergeben
    Von kostya im Forum VisualStudio & MFC
    Antworten: 3
    Letzter Beitrag: 03.02.06, 18:19
  5. alle dateien eines typs einlesen
    Von UrsaMajor im Forum Borland CBuilder und VCL
    Antworten: 7
    Letzter Beitrag: 24.04.05, 16:19