저는 AppleScript를 스크립트 편집기의 iCloud Drive 폴더에 보관하기 시작했습니다. 종종 여러 장치에서 스크립트를 재사용하거나 검토하는 것을 좋아하기 때문입니다. 일반적으로 나는 iCloud Drive를 좋아합니다. 그러나 나는 특이한 시나리오를 발견했습니다. 내 launchd plist의 ProgramArguments 섹션에서 이러한 경로를 성공적으로 사용할 수 없습니다.
일반적으로 경로는 다음과 같은 형식을 취합니다.
~/Library/Mobile\ Documents/com\~apple\~ScriptEditor2/Documents/MyScript.scpt
그러나 로그를 보면 launchd가 경로를 실행하려고 할 때 이 경로가 제대로 작동하고 완전히 손상되고 결과는 "해당 파일이나 디렉터리가 없습니다."라는 것을 알 수 있습니다. 내가 보고 있는 것은 두 번째와 세 번째 물결표가 사용자의 홈 폴더 경로로 동적으로 대체된다는 것입니다. 기술적으로는 첫 번째 물결표만 참조하는 것입니다. 나는 그것을 탈출하기 위해 다양한 방법을 시도했지만 소용이 없었습니다.
이 문제를 해결하는 방법에 대한 의견이 있으십니까?
답변1
글로빙을 실제 쉘에 남겨둘 수 있습니다.
<key>ProgramArguments</key>
<array>
<string>/bin/sh</string>
<string>-c</string>
<string>programToRun --arg1 --arg2 ~/relative\~path\~here</string>
</array>