Hallo,
dieser Befehl ist nicht als RegEx gedacht, sondern kommt unter Postsript in der entsprechenden Zeile der Regel / YAML Datei.
Gruß
Karsten
Ah, so habe ich das noch gar nicht in Erwägung gezogen, aber ja, klingt einleuchtend und wäre auch ne Möglichkeit.
Dazu müsste ich dem Postscript mitteilen, welche aktuelle Datei ich gerade in Arbeit habe, ich habe mich anhand dieses Videos orientiert:
https://www.youtube.com/watch?v=CkfaEBZBNx4 und folgenden postscript-Befehl verwendet:
Bash:
mv "${output}" "${output%/*}/$(echo '${output##*/}' | sed -E 's/([0-9]{1,2})\.([0-9]{1,2})\.([0-9]{4})$/\3-\2-\1/g')"
leider ohne Erfolg!
run user defined post scripts:
➜ postscript_STADTWERKE_21_770540699
mv: cannot stat '/volume1/Scanner/Ausgabe//Stadtwerke/23.02.2024 Gutschrift Einspeisung PV 2023 (1).pdf': No such file or directory
ERROR at line 2537: mv "${output}" "${output%/*}/$(echo '${output##*/}' | sed -E 's/([0-9]{1,2})\.([0-9]{1,2})\.([0-9]{4})$/\3-\2-\1/g')"
ERROR at line 2537: eval "${cmd}"
Der finale Dateiname lautet zwar auf "23.02.2024 Gutschrift Einspeisung PV 2023.pdf" jedoch umbenannt wird, aufgrund des Fehlers oben, nichts.
Ich sollte vielleicht erwähnen, dass ich zwei Regeln für eine PDF-Datei habe, die beide ausgeführt werden. Die erste benennt die Datei zunächst nach "Gutschrift Einspeisung PV 2024" um, die zweite soll das Datum an die erste Stelle des Dateinamens setzen und die Reihenfolge des Datums mit dem postscript oben abändern.
YAML:
## Erkennung des Datums des Schreibens mit anschließender Umkehrung des Datumn von 23.03.2024 nach 2024-03-23
STADTWERKE_20:
tagname: §tagname_RegEx
tagname_RegEx: (?i)(Datum\:)(?:.+)\K(([[:digit:]]{2}).([[:digit:]]{2}).)((19|20)\d{2})
targetfolder: "/Stadtwerke/"
condition: all
subrules:
- searchstring: (?i)(Gutschrift Einspeisung Photovoltaik)
searchtyp: contains
isRegEx: true
source: content
casesensitive: true
- searchstring: Stadtwerke
searchtyp: contains
isRegEx: true
source: content
casesensitive: true
## Erkennung des Abrechnungsjahres, bspw 2023 für den Dateinamen
STADTWERKE_21:
tagname: " Gutschrift Einspeisung PV §tagname_RegEx"
tagname_RegEx: (?i)(vom)\s*([[:digit:]]{2}.[[:digit:]]{2}.)\K(19|20)\d{2}
targetfolder: "/Stadtwerke/"
condition: all
postscript: mv "${output}" "${output%/*}/$(echo '${output##*/}' | sed -E 's/([0-9]{1,2})\.([0-9]{1,2})\.([0-9]{4})$/\3-\2-\1/g')"
subrules:
- searchstring: (?i)(Gutschrift Einspeisung Photovoltaik)
searchtyp: contains
isRegEx: true
source: content
casesensitive: true
- searchstring: Stadtwerke
searchtyp: contains
isRegEx: true
source: content
casesensitive: true
Aber egal, ob ich das postscript-Kommando in die erste oder die zweite Regel lege, es kommt immer der o.g. Fehler.