Angenommen, ich möchte eine bestimmte App mit einem Symbol in der Menüleiste öffnen. Ist dies mit einem Shell-Befehl möglich?
In meinem Fall gibt es eine App namens "Quick View Calendar" (im Mac App Store verfügbar), die in der Menüleiste angezeigt wird. Diese möchte ich mit einem Terminal-Befehl öffnen und mit diesem Code einen Automator-Dienst ausführen
Antworten:
Da zum Öffnen der App lediglich ein Mausklick auf das Menüleistensymbol erforderlich ist, kann AppleScript dies sehr einfach mithilfe von GUI-Skripten erreichen. Dazu müssen die richtigen Zugriffsberechtigungen für jedes Programm erteilt werden, mit dem Sie das AppleScript ausführen (zB Script Editor , Automator , Terminal , etc ..).
Erteilen Sie daher zunächst die entsprechenden Berechtigungen über die Systemeinstellungen . Dieser Screenshot stammt aus MacOS 10.13:
Öffnen Sie anschließend den Skript-Editor und führen Sie dieses Skript aus. Ich selbst habe keine Schnellkalenderansicht , aber die Prinzipien für die meisten Menüleisten-Apps sind die gleichen. Daher wird hoffentlich eine Liste der Anwendungsnamen mit Symbolen in Ihrer Menüleiste angezeigt:
In der Liste, die durch Ausführen dieses Befehls zurückgegeben wird, sollte "Quick View Calendar" oder ein ähnliches Element angezeigt werden. Dies ist der Name, den ich im folgenden Snippet verwendet habe. Das ist genau das, was Sie brauchen, nämlich einen Mausklick auf das Menüleistensymbol auszugeben und die Anwendung zu öffnen. Wenn der Name etwas anderes ist, können Sie das selbst ändern:
Sie können diesen Code in eine Aktion " AppleScript ausführen" in Automator einfügen (vorausgesetzt, Automator wurden Zugriffsberechtigungen erteilt), die dann Teil Ihres Workflows beim Erstellen des zu erstellenden Dienstes werden.
Ihre ursprüngliche Anforderung bestand darin, einen Befehl vom Terminal aus auszuführen, um diese Aktion auszuführen. Sie können also einfach das Terminal öffnen (erneut, Zugriffsberechtigungen!) Und Folgendes eingeben:
Wenn Sie auf Probleme stoßen, lassen Sie es mich wissen.
quelle
Terminal (bash, csh, zsh usw.) "öffnet" Menübefehle nicht. Dafür ist AppleScript gedacht - es skriptet die GUI.
Damit eine Anwendung eine Option / Funktion auf der Befehlszeile "ausführt", auf die normalerweise über die Menüleiste zugegriffen wird, übergeben Sie Befehlszeilenparameter. In der Regel sieht der Befehl folgendermaßen aus:
Der obige Befehl wird mit dem Optionsflag
x
(wobeix
es sich um ein beliebiges Flag handelt, das der Befehl akzeptiert) und optionalen Argumenten für dieses Flag ausgeführt.Die Einschränkung hierbei ist, dass die Anwendung Befehlszeilenoptionen akzeptieren muss . Wenn dies nicht der Fall ist, können Sie über die Befehlszeile ein Skript ausführen, um das zu tun, was Sie möchten.
Wenn dies der Fall ist, schauen Sie in AppleScript nach, aber beachten Sie, dass nicht alle Apps unter AppleScript skriptfähig sind.
quelle
Sie können eine sehr einfache 14-Zeilen-Foundation-Framework-App kompilieren, mit der Sie von nun an auf einen beliebigen Punkt x / y auf dem Bildschirm klicken können.[Inhalt aufgrund massiver anonymer Abstimmungen zurückgenommen ...]
quelle