Ich versuche, ein Applescript in einem Launchd Plist auszuführen, aber aus irgendeinem Grund funktioniert es einfach nicht. Es könnte sein, dass es mein Computer ist, aber ich denke, dass da etwas anderes nicht stimmt. Wenn jemand diesen Beitrag sehen und kommentieren könnte, würde ich es sehr schätzen!Launched PLIST läuft nicht
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>com.pf.Testing</string>
<key>ProgramArguments</key>
<array>
<string>/usr/bin/osascript</string>
<string>-e</string>
<string>'tell application "Finder"' -e 'set didQuit to (path to home folder as string) & ".myApp"' -e 'if (exists file didQuit) then' -e 'tell application "TestApp"' -e 'activate' -e 'end tell' -e 'end if' -e 'end tell'</string>
</array>
<key>StartInterval</key>
<integer>20</integer>
<key>RunAtLoad</key>
<true/>
</dict>
</plist>
Danke für jede Hilfe!
AKTUELLE PLIST:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>com.pf.Testing</string>
<key>ProgramArguments</key>
<array>
<string>/usr/bin/osascript</string>
<string>-e</string>
<string>'tell application "Finder"'</string>
<string>-e</string>
<string>'set didQuit to (path to home folder as string) & ".myApp"'</string>
<string>-e</string>
<string>'if (exists file didQuit) then'</string>
<string>-e</string>
<string>'tell application "TestApp"'</string>
<string>-e</string>
<string>'activate'</string>
<string>-e</string>
<string>'end tell'</string>
<string>-e</string>
<string>'end if'</string>
<string>-e</string>
<string>'end tell'</string>
</array>
<key>StandardErrorPath</key>
<string>/Users/pf/Desktop/Problem.log</string>
<key>StartInterval</key>
<integer>20</integer>
<key>RunAtLoad</key>
<true/>
</dict>
</plist>
Hallo Nick: Vielen Dank für Ihre Antwort. Leider wird auch nach dem Verwenden des LimitLoadToSessionType-Codes und der doppelten Überprüfung, dass sich im Pfad eine Datei befand, die Datei immer noch nicht ausgeführt. Es ist wirklich seltsam, vor allem, weil wenn ich den gleichen Code in Terminal ausführen, es funktioniert gut ... Irgendwelche Ideen? – PF1
Eine andere Idee: Statt die AppleScript-Befehle als Argumente zu übergeben, versuchen Sie, sie in eine separate Skriptdatei zu schreiben und ihren Pfad an osascript zu übergeben. –