Das sieht ganz schlüssig aus. Und wie ist da der Scanner angebunden?
Input für das Skript sind pdf Dateien. In meinem Fall erzeugt der Scanner direkt PDF's und legt sie per SMB/CIFS direkt auf die Diskstation in den
$inboxfolder. Bei mir heißen die Dateien dann Scan.pdf, Scan0001.pdf, Scan0002.pdf, ...
Das Skript läuft dann stündlich drüber.
Dabei werden im ersten Schritt ($doOCR == true) alle Dateien, die mit
Scan (siehe $matchWithoutOCR) beginnen, geOCR'd. Dabei erhält das neue PDF den Namen
OCR_Scan.pdf (Es kommt also der
$OCRPrefix vorne dran)
Wenn $doRenameAfterOCR = true ist, wird im Anschluss versucht für alle Dateien, die mit "OCR_" ($OCRPrefix) beginnen, einen besseren Dateinamen zu finden. Hierbei wird die erste Seite des Scans mithilfe von pdftotext eingelesen und darin nach verschiedenen Dingen gesucht:
- Es wird nach einem Datum gesucht. Wird keines gefunden, wird das aktuelle Datum verwendet.
- Es wird gesucht, ob ein Eintrag in $renamerules passt. Der erste passende Treffer wird als Name genommen. (Bsp: "Sparkasse&Depot"=>"Sparkasse Aktiendepot", wenn also die Wörter Sparkasse und Depot gefunden werden, wird der Name "Sparkasse Aktiendepot" verwendet.)
- Es wird gesucht, ob Einträge in $tagrules passen. Jeder Eintrag, der hier "matched" erzeugt ein hashtag, das angehängt wird. (Bsp: "#stefan" => "Stefan*Weiss,Weiss*Stefan", wenn also mein Name in egal welcher Reihenfolge in einer Zeile gefunden wird.)
Die Datei OCR_Scan.pdf wird dann also umbenannt nach sowas:
2017-06-09 Sparkasse Aktiendepot #stefan.pdf
Alles bisherige läuft im $inboxfolder ab. Man kann dann also selber schauen, ob der Name passt und ggf. nochmal umbenennen. An dieser Stelle empfehle ich, das PDF in einen anderen Ordner zu verschieben. Wenn man jetzt noch das Tagging ($doTagging = true) verwenden will, muss man selber die fertigen Dateien ins $archivefolder verschieben. Für alle Dateien darin erzeugt das Script hashtag-Ordner unterhalb von $tagsfolder und legt dort "Verknüpfungen" (in Form von hardlinks) zu den Dateien im $archivefolder an.
Noch eine Frage: Im Readme steht "For Automatic rename: make sure that pdftotext is available.". Was ist genau damit gemeint?
Damit ist der Schritt $doRenameAfterOCR gemeint (siehe oben).