launchd plist 내에서 AppleScript를 실행하려고하지만 어떤 이유로 작동하지 않습니다. 그것은 내 컴퓨터 일 수 있지만, 거기에 뭔가 다른 것이있을 수 있다고 생각하고 있습니다. 누군가이 글에 대해 살펴보고 의견을 제시 할 수 있다면 정말 고맙겠습니다.Launchd 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"' -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>
어떤 도움을 주셔서 감사합니다!
최신 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>
안녕하세요 Nick : 답장을 보내 주셔서 감사합니다. 불행히도 LimitLoadToSessionType 코드를 사용하고 경로에 파일이 있는지 다시 확인한 후에도 여전히 실행되지 않습니다. 정말 이상한데, 특히 터미널에서 같은 코드를 실행할 때 잘 작동합니다 ... 어떤 아이디어입니까? – PF1
또 다른 아이디어 : applescript 명령을 인수로 전달하는 대신 별도의 스크립트 파일에 넣고 해당 경로를 osascript에 전달하십시오. –