ich stehe vor einer – für Scripter vermutlich leichten – Aufgabe, die mir durchaus ein paar Bier Wert ist. ;-)
Ich habe alphanumerische Dateinamen, bei denen von den ersten 6 Zeichen immer das 6. Zeichen gelöscht werden muss, z. B.
müssen gekürzt werden auf:
Dies sollte sich in AppleScript oder einem ShellScript realisieren lassen, da ich solche Scripts in meinen Hazel-Workflow einbinden kann. Zumindest bei Unix-ShellScript weiß ich, dass es mit Regular Expressions umgehen kann. Aber ich kann das nicht scripten. :-(
In InDesign GREP würde ich das so machen:
Was mir aber hier nicht hilft, da sich das Ganze weder in InDesign abspielt noch damit zu tun hat.
Den kompletten Workflow von der Dateierstellung bis zum automatisierten FTP-Upload auf einen Server hier zu posten, würde jetzt den Rahmen sprengen. Mir fehlt nur dieser eine Schritt. ;-)
--- Viele Grüße, Ralf --- iMac i7 (18,3) 4,2 GHz, 32 GB 10.15.7 Catalina | MacBook Pro 15" (8,2) 2,0 GHz, 16 GB, 10.13.6 High Sierra | Mac Mini (6,1) als Server 2,5 GHz, 8 GB, 10.13.6 High Sierra | CC 2021 (ID 16.3.2)
Funktioniert aber nicht mit Leerzeichen im Dateinamen. Das muss man dann noch irgendwie zusammenfassen den String wenn das der Fall sein sollte. Markus
erstmal vielen Dank. Ich werde das später mal testen.
Die Dateinamen enthalten keine Leer- oder Sonderzeichen – in dieser Beziehung bin ich konservativ. Zumindest wenn es um Dateien geht, die automatisch weiterverarbeitet und auf irgendwelche Server geladen werden müssen.
--- Viele Grüße, Ralf --- iMac i7 (18,3) 4,2 GHz, 32 GB 10.15.7 Catalina | MacBook Pro 15" (8,2) 2,0 GHz, 16 GB, 10.13.6 High Sierra | Mac Mini (6,1) als Server 2,5 GHz, 8 GB, 10.13.6 High Sierra | CC 2021 (ID 16.3.2)
In Hazel steht als Hinweis, wenn ich ein Shellscript einbinden möchte, folgendes:
was mir natürlich nicht viel sagt.
--- Viele Grüße, Ralf --- iMac i7 (18,3) 4,2 GHz, 32 GB 10.15.7 Catalina | MacBook Pro 15" (8,2) 2,0 GHz, 16 GB, 10.13.6 High Sierra | Mac Mini (6,1) als Server 2,5 GHz, 8 GB, 10.13.6 High Sierra | CC 2021 (ID 16.3.2)
die mv Zeile greift sich durch die for-next Schleife eine Datei nach der anderen und benennt sie um.
Es soll "gesucht und ersetzt" werden: dafür stetht das 's' Trenner ist bei sed der Slash '/' gesucht wird nach allem '.' wieder Trenner '/' ersetzt wird durch nix wieder Trenner '/' und zwar _nur_ für den 6. Treffer.
@ Ralf: ja dann hast es Dir ja ohnehin selber beantwortet. Bei mir funktioniert es. Das for f do und das done lässt du weg, alsu nur die Zeile mit mv und da ersetzt Du $f durch $1.
Hazel will sich selbst um die Schleife kümmern, also darum, dass alle Dateien des Verzeichnisses abgearbeitet werden, also bräuchtest du nur den Teil der Umbenennung für dein Script, also vermutlich
Inzwischen ist mir auch klar, was bei Ralfs erstem Versuch schief läuft.
Es gibt jetzt 2 Schleifen, einmal von Hazel und einmal vom Script, beim ersten Hazeldurchlauf wird wohl nichts gemacht, beim 2. Durchlauf wird die 2. Datei korrekt gekürzt, die folgenden aber auch. beim dritten Hazeldurchlauf für Datei 3 wird alles ab 3 nochmals um ein Zeichen gekürzt, und so weiter ...
Das ist ja auch logisch. Wusste ich ja nicht das es die Schleife nicht braucht. Also somit Schleife in der Schleife und das gesammte wird immer wieder verwendet weil $1 ...
2019-02-12 18:30:41.870 hazelworker[99549] Shellscript exited with non-successful status code: 1
Ich werde das mal im Hazel-Forum posten, wo in der Regel der Entwickler selbst antwortet. Ich gebe dann hier entsprechendes Feedback.
Trotzdem erstmal danke euch beiden!
--- Viele Grüße, Ralf --- iMac i7 (18,3) 4,2 GHz, 32 GB 10.15.7 Catalina | MacBook Pro 15" (8,2) 2,0 GHz, 16 GB, 10.13.6 High Sierra | Mac Mini (6,1) als Server 2,5 GHz, 8 GB, 10.13.6 High Sierra | CC 2021 (ID 16.3.2)
So, jetzt kommt endlich mein Feedback. Das Problem ist gelöst. Und dafür braucht es kein Script.
Hazel hat eine Option, die sich "Match filename" nennt. Dabei werden bestimmte Suchmuster (patterns) mit sog. "tokens" erstellt. Z. B. "Buchstabe", "Zahl", "Symbol", "Buchstabe oder Zahl" usw. Also im Grunde eine Art "komfortables Regex".
Die erstellten Suchmuster stehen dann auch in den "Rename"-Optionen zur Verfügung.
--- Viele Grüße, Ralf --- iMac i7 (18,3) 4,2 GHz, 32 GB 10.15.7 Catalina | MacBook Pro 15" (8,2) 2,0 GHz, 16 GB, 10.13.6 High Sierra | Mac Mini (6,1) als Server 2,5 GHz, 8 GB, 10.13.6 High Sierra | CC 2021 (ID 16.3.2)