Ich habe bereits in den Foren nach einer Antwort auf das Problem gesucht, aber meistens steht es im Zusammenhang mit der Stapelkonvertierung von Dateien (mit unterschiedlichen Namen). Ich möchte nur eine Reihe von JPEG-Dateien in der Vorschau öffnen.
Ich nehme Bilder von bestimmten Gegenständen in meiner Werkstatt mit „Workflow“ für iOS auf. Das hat ein eigenes Skript, das die Dateien im Format 00000-0.JPG speichert, wobei die ersten fünf Nullen die Artikelnummer sind und die letzte Null die sequentielle Reihenfolge dieses bestimmten Artikels ist. zB 78934-4.JPG ist das 4. Foto von Artikel "78934". Die Anzahl der Bilder für einen bestimmten Artikel kann stark variieren.
Diese landen alle in einem Ordner (auf meinem Mac) mit mehreren tausend anderen Bildern, alle mit der gleichen Namenskonvention. Ich möchte den Prozess des Suchens und Öffnens dieser Bilder beschleunigen (ähnlich wie im Finder zu sein, eine Reihe von Bildern von Hand auszuwählen und auf die Reihe zu doppelklicken und sie in einer "Instanz" oder einem Vorschaufenster öffnen zu lassen - um das Vorhandensein zu minimieren um Fenster herumzuziehen) mit AppleScript.
Hier ist, was ich bisher geschrieben habe...
tell application "Finder" to set myFiles to folder "Macintosh SSD:Users:me:ownCloud:Bilder_neu:Einzelbilder"
set file_extention to ".JPG"
set articleNumber to display dialog "Please enter article number" default answer "" with icon note buttons {"Cancel", "Continue"} default button "Continue"
Ich bin mir nicht sicher, wie ich die "for-Schleife" verwalten soll, um die Bilder zu finden und dann zu öffnen.
Danke für jede gegebene Hilfe
Der folgende Beispiel- AppleScript- Code geht davon aus, dass die macOS- Standardeinstellung zum Öffnen von Bildern in der Vorschau immer noch aktiv ist.
set theImages to quoted form of POSIX path of ¬
((path to home folder as string) & "ownCloud:Bilder_neu:Einzelbilder")
set articleNumber to text returned of ¬
(display dialog "Please enter article number:" default answer ¬
"" with icon note buttons {"Cancel", "Continue"} default button "Continue")
do shell script "find " & theImages & " -type f -iname '" & articleNumber & "-*.JPG' -exec open {} +"
Wenn Vorschau nicht der Standardhandler für Bilddateien ist, ändern Sie den do shell script
Befehl in:
do shell script "open -a Preview $(find " & theImages & " -type f -iname '" & articleNumber & "-*.JPG')"
Beachten Sie, dass " reines AppleScript" nicht erforderlich ist!
Hinweis: Der AppleScript- Beispielcode ist genau das und verwendet keine Fehlerbehandlung und soll nur eine von vielen Möglichkeiten zeigen, wie eine Aufgabe ausgeführt werden kann. Es liegt immer in der Verantwortung des Benutzers, eine geeignete Fehlerbehandlung nach Bedarf/Wunsch hinzuzufügen/zu verwenden .
Hier ist ein reines AppleScript-Mittel, um Ihr Ziel zu erreichen:
set ImagesFolder to "/Users/me/ownCloud/Bilder_neu/Einzelbilder"
set articleNumber to text returned of (display dialog ¬
"Please enter article number" default answer ¬
"" with icon note buttons {"Cancel", "Continue"} ¬
default button "Continue")
tell application "System Events" to set JPGs to ¬
path of every file in folder ImagesFolder whose ¬
type identifier is "public.jpeg" and ¬
name begins with (articleNumber & "-")
tell application "Preview" to open JPGs
open -a Preview $(find ...)
. Das ist vernünftiger. Obwohl reines AppleScript nicht erforderlich ist, ist es im Allgemeinen nicht wünschenswerter? Oder anders ausgedrückt, was hat Sie dazu gebracht, dieses Problem zu lösen, indem Sie Shell-Befehle verwenden, anstatt die Dateien über AppleScript abzurufen (was instinktiv meine erste Neigung war)?do shell script
es ist ein AppleScript- Befehl und als solcher ist absolut nichts falsch daran, ihn über eine sogenannte reine AppleScript-Methode oder umgekehrt zu verwenden. Ich verzichte oft auf die Verwendung, do shell script
weil ich das, was ich erreichen möchte, normalerweise schneller/einfacher und mit weniger Zeichen schreiben kann als mit sogenanntem reinem AppleScript.
Benutzer3439894
Wilhelm Lombard
Benutzer3439894