[GastForen Betriebsysteme und Dienste Apple (Hard- und Software) Kleines AppleScript oder Unix-ShellScript gesucht

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste
Themen
Beiträge
Moderatoren
Letzter Beitrag

Kleines AppleScript oder Unix-ShellScript gesucht

Ralf Hobirk
Beiträge gesamt: 5907

8. Feb 2019, 19:14
Beitrag # 1 von 12
Bewertung:
(5290 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo zusammen,

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.

Code
HDBB1A_de.txt 
HDBD2A_de.txt
HDBF1D_de.txt
HDBG15_de.txt

müssen gekürzt werden auf:

Code
HDBB1_de.txt 
HDBD2_de.txt
HDBF1_de.txt
HDBG1_de.txt

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:

Code
Suche: (\w\w\w\w\w)(\w) 
Ersetze: $1

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 aus Istrien Cool
Ralf
---
iMac i7 (12,2) 3,4 GHz, 16 GB | MacBook Pro 15" (8,2) 2,0 GHz, 16 GB | Mac Mini (3,1) als Server 2,53 GHz, 8 GB | 10.11.6 El Capitan | CS6 (ID 8.0.1)
Hier Klicken X

Kleines AppleScript oder Unix-ShellScript gesucht

Markus76
Beiträge gesamt: 340

12. Feb 2019, 15:59
Beitrag # 2 von 12
Beitrag ID: #568890
Bewertung:
(5153 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Ralf

Probier doch mal das hier:
Code
for f in *; do 
mv $f $(echo $f | sed 's/.//6')
done


Funktioniert aber nicht mit Leerzeichen im Dateinamen. Das muss man dann noch irgendwie zusammenfassen den String wenn das der Fall sein sollte.
Markus


als Antwort auf: [#568859]

Kleines AppleScript oder Unix-ShellScript gesucht

Ralf Hobirk
Beiträge gesamt: 5907

12. Feb 2019, 16:13
Beitrag # 3 von 12
Beitrag ID: #568891
Bewertung:
(5143 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo 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 aus Istrien Cool
Ralf
---
iMac i7 (12,2) 3,4 GHz, 16 GB | MacBook Pro 15" (8,2) 2,0 GHz, 16 GB | Mac Mini (3,1) als Server 2,53 GHz, 8 GB | 10.11.6 El Capitan | CS6 (ID 8.0.1)


als Antwort auf: [#568890]

Kleines AppleScript oder Unix-ShellScript gesucht

Ralf Hobirk
Beiträge gesamt: 5907

12. Feb 2019, 16:33
Beitrag # 4 von 12
Beitrag ID: #568892
Bewertung:
(5128 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Markus,

es hat leider nicht geklappt. Aus:

Zitat HDBB1A_ab.txt
HDBB2A_ab.txt
HDBB3A_ab.txt
HDBD1A_ab.txt
HDBD2A_ab.txt
HDBF1A_ab.txt
HDBG1A_ab.txt


hat mir das Script dies hier gemacht:

Zitat HDBB1A_ab.txt
HDBB2_ab.txt
HDBB3ab.txt
HDBD1b.txt
HDBD2.txt
HDBF1txt
HDBG1xt


In Hazel steht als Hinweis, wenn ich ein Shellscript einbinden möchte, folgendes:

Zitat Use $1 to refer to the file being processed.


was mir natürlich nicht viel sagt.

---
Viele Grüße aus Istrien Cool
Ralf
---
iMac i7 (12,2) 3,4 GHz, 16 GB | MacBook Pro 15" (8,2) 2,0 GHz, 16 GB | Mac Mini (3,1) als Server 2,53 GHz, 8 GB | 10.11.6 El Capitan | CS6 (ID 8.0.1)


als Antwort auf: [#568891]

Kleines AppleScript oder Unix-ShellScript gesucht

Thomas Richard
Beiträge gesamt: 18217

12. Feb 2019, 16:48
Beitrag # 5 von 12
Beitrag ID: #568893
Bewertung:
(5125 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Danke Markus!

Nur zur Erläuterung:

Antwort auf: sed 's/.//6'


sed ist Suchen und Ersetzten im Terminal/UNIX.

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.

Also im Prinzip
sed s/SUCHEN/ERSETZEN/


Ich kenne das eigentlich so:
Code
sed 's6/.//' 



MfG

Thomas


Und wenn dir geholfen wurde, hilf uns, dies auch weiterhin zu können.
http://www.hilfdirselbst.ch/info/


als Antwort auf: [#568890]

Kleines AppleScript oder Unix-ShellScript gesucht

Markus76
Beiträge gesamt: 340

12. Feb 2019, 16:51
Beitrag # 6 von 12
Beitrag ID: #568894
Bewertung:
(5118 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
@ Thomas: das ist dann ja eh dasselbe.

@ 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.

Markus


als Antwort auf: [#568892]

Kleines AppleScript oder Unix-ShellScript gesucht

Thomas Richard
Beiträge gesamt: 18217

12. Feb 2019, 17:06
Beitrag # 7 von 12
Beitrag ID: #568896
Bewertung:
(5111 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Antwort auf: In Hazel steht als Hinweis, wenn ich ein Shellscript einbinden möchte, folgendes:

Zitat Use $1 to refer to the file being processed.



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

Code
mv $1 $(echo $1 | sed ‘s/.//6’) 

oder
Code
mv $1 $(echo $1 | sed ‘s6/.//’) 



MfG

Thomas


Und wenn dir geholfen wurde, hilf uns, dies auch weiterhin zu können.
http://www.hilfdirselbst.ch/info/


als Antwort auf: [#568892]
(Dieser Beitrag wurde von Thomas Richard am 12. Feb 2019, 17:09 geändert)

Kleines AppleScript oder Unix-ShellScript gesucht

Markus76
Beiträge gesamt: 340

12. Feb 2019, 17:08
Beitrag # 8 von 12
Beitrag ID: #568897
Bewertung:
(5105 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Thomas, das war jetzt die charmantere Formulierung von dem was ich geschrieben habe ;-)


als Antwort auf: [#568896]

Kleines AppleScript oder Unix-ShellScript gesucht

Thomas Richard
Beiträge gesamt: 18217

12. Feb 2019, 17:10
Beitrag # 9 von 12
Beitrag ID: #568898
Bewertung:
(5105 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Jupp ;)

Trotzdem gern geschehen.

Nachtrag:

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 ...


MfG

Thomas


Und wenn dir geholfen wurde, hilf uns, dies auch weiterhin zu können.
http://www.hilfdirselbst.ch/info/


als Antwort auf: [#568897]
(Dieser Beitrag wurde von Thomas Richard am 12. Feb 2019, 17:17 geändert)

Kleines AppleScript oder Unix-ShellScript gesucht

Markus76
Beiträge gesamt: 340

12. Feb 2019, 17:21
Beitrag # 10 von 12
Beitrag ID: #568899
Bewertung:
(5094 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
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 ...


als Antwort auf: [#568898]

Kleines AppleScript oder Unix-ShellScript gesucht

Ralf Hobirk
Beiträge gesamt: 5907

12. Feb 2019, 18:40
Beitrag # 11 von 12
Beitrag ID: #568901
Bewertung:
(5056 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Leider funktioniert es weder mit der einen, noch mit der anderen von Thomas geschriebenen Scriptzeile. Im Log erhalte ich eine Fehlermeldung:

Code
2019-02-12 18:30:41.869 hazelworker[99549] [Error] Shell script failed: Error processing shell script on file /Users/rhobirk/Desktop/Rename Result/HDBB3A_ab.txt. 

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 aus Istrien Cool
Ralf
---
iMac i7 (12,2) 3,4 GHz, 16 GB | MacBook Pro 15" (8,2) 2,0 GHz, 16 GB | Mac Mini (3,1) als Server 2,53 GHz, 8 GB | 10.11.6 El Capitan | CS6 (ID 8.0.1)


als Antwort auf: [#568898]

Kleines AppleScript oder Unix-ShellScript gesucht

Ralf Hobirk
Beiträge gesamt: 5907

15. Feb 2019, 18:12
Beitrag # 12 von 12
Beitrag ID: #568934
Bewertung:
(4750 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
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 aus Istrien Cool
Ralf
---
iMac i7 (12,2) 3,4 GHz, 16 GB | MacBook Pro 15" (8,2) 2,0 GHz, 16 GB | Mac Mini (3,1) als Server 2,53 GHz, 8 GB | 10.11.6 El Capitan | CS6 (ID 8.0.1)


als Antwort auf: [#568901]
X

Aktuell

InDesign / Illustrator
easycatalog_300

Veranstaltungskalender

Hier können Sie Ihre Anlässe eintragen, welche einen Zusammenhang mit den Angeboten von HilfDirSelbst.ch wie z.B. Adobe InDesign, Photoshop, Illustrator, PDF, Pitstop, Affinity, Marketing, SEO, Büro- und Rechtsthemen etc. haben. Die Einträge werden moderiert freigeschaltet. Dies wird werktags üblicherweise innert 24 Stunden erfolgen.

pdf-icon Hier eine kleine Anleitung hinsichtlich Bedeutung der auszufüllenden Formularfelder.

Veranstaltungen
21.11.2019 - 22.11.2019

Düsseldorf
Donnerstag, 21. Nov. 2019, 09.30 Uhr - Freitag, 22. Nov. 2019, 17.30 Uhr

Schulung, Seminar

Die „zweitägige Weiterbildung zum Cleverprinting-Datenchecker“ bietet wertvolles, komprimiertes Fachwissen. Diese Schulung ist eine Kombination aus vier Einzelschulungen: Colormanagement mit Photoshop, InDesign, Acrobat und PDF/X, PitStop. Sie ist inhaltlich exakt auf die Anforderungen der modernen Druckdatenprüfung ausgerichtet.

Ja

Organisator: Cleverprinting.de

https://www.cleverprinting.de/schulungen/zweitaegige-weiterbildung-zum-cleverprinting-datenchecker/

Zweitägige Weiterbildung zum Cleverprinting-Datenchecker
Veranstaltungen
25.11.2019

Frankfurt/M
Montag, 25. Nov. 2019, 09.30 Uhr

Schulung, Seminar

Der eintägige „Kompaktkurs PDF-Druckdaten-Erstellung“ ist eine Zusammenfassung unserer erfolgreichen zweitägigen Colormanagement- und PDF/X-Schulungen. Der Kompaktkurs vermittelt dem Teilnehmer die Grundlagen des Colormanagements, der Verwendung von ICC-Druckprofilen, der PDF-Erzeugung und der PDF-Überprüfung mittels Acrobat Professional.

Ja

Organisator: Cleverprinting.de

https://www.cleverprinting.de/schulungen/schulung-colormanagement-und-pdf-x-kompaktkurs/

Colormanagement und PDF/X – Kompaktkurs