OSX 10.4.11에서 launchd를 사용하여 FileMaker 스크립트의 일정을 cron과 유사하게 잡는 데 시간이 있습니다. (필자는 초기 익살춤을 serverfault라고 묘사했습니다.) 처음에는 FileMaker 스크립트가 LaunchDaemon의 verboten 인 GUI를 여는 것이 문제라고 생각했습니다. 그런 다음 대신 LaunchAgent를 만들었습니다.이 도구는 윈도우 리소스를 사용할 수 있도록 허용되었습니다. 당신은 당신이 손으로로드 한 후 작업을 시작합니다 launchctl를 사용하는 경우LaunchAgent 여는 FileMaker 스크립트
, 그럼 모든 것이 잘 작동 :
여기에 아무 의미가없는 것들의 목록입니다.
sudo launchctl start my.script.name
당신이 (앞으로 몇 시간이 아닌) 다음 .plist를로드 향후 몇 분입니다 StartInterval을 선택하면, 모든 작동합니다. (처음에는 이것이 스크린 세이버와 관련이있을 것이라고 생각했는데, ss가 실행될 때 가비지 콜렉션 또는 무언가가 표시되지만 SS가 시작된 후에도 일정이 잡히면 작동하지 않는 것처럼 보입니다. 너무 먼 미래에.
FileMaker 프로그램을 실행하는 것 외에도 로그 파일에 타임 스탬프를 작성한 쉘 스크립트 안에 FileMaker 프로그램의 호출을 래핑했습니다. 이 로그 파일을 읽음으로써 적절한 시간에 launchd에 의해 쉘 스크립트가 실제로 호출되었는지 확인할 수 있습니다. 또는 적어도 거의 때문에 :
로그 이상한 뭔가를 보여줍니다
: 나는 8:08 pm에 시작되는 스크립트를 예약 할 경우, 나는이 개 실행, 서로 떨어져 몇 초를 얻을 수
[Tue Jan 24 20:07:57 CST 2012] 스크립트 실행 중!
[Tue Jan 24 20:08:00 CST 2012] 실행 스크립트!
나는 여기에 내 로프의 끝에서 가지 해요 - 나는 관련 맨, 애플 기술 문서의 StackExchange 사이트에 다른 기사를 읽었습니다. 나는 가능한 한 내 숙제를 정말로 끝냈다. 나를 도울 수있는 누군가는 진지한 업장을 향해 나아갈 것입니다.
다시 말하지만, 여기에 수정 된 일부 cruft (XML 정의, 로깅 정보)가있는 .plist가 있습니다. (수동으로로드 할 때이 작품, 기억, 그래서 PLIST 자체가 괜찮 알고있다.)
<plist version="1.0">
<dict>
<key>Label</key>
<string>shane.useragent.launcher</string>
<key>ProgramArguments</key>
<array>
<string>/Users/shane/launchFM.sh</string>
</array>
<key>StartCalendarInterval</key>
<dict>
<key>Hour</key>
<integer>20</integer>
<key>Minute</key>
<integer>8</integer>
</dict>
</dict>
</plist>
생각을 몇 :. 1 : 파일 메이커 뭔가 다른 때 일을 바쁜 될 수 있을까 스크립트가 응답하지 않으므로 2 : 스크립트를 작성할 데이터베이스가 여전히 열려 있고 FileMaker에서 여전히 활성 데이터베이스입니까? 3 : 대신 iCal 경고로 자동화를 시도 했습니까? FileMaker 설치? FM Pro/Advanced? FM 서버? 공유 파일? 단일 사용자 파일? – pft221
응답 해 주셔서 감사합니다 # 1 : 아니요, 여러 번 시작으로 인해 여러 차례 방해가 발생하여 방해를받을 수 있으므로 일을 망칠 수 있습니다. # 2 : 스크립트를 실행하면 적절한 생각이 생깁니다. 데이터베이스가 활성화되었습니다.# 3 : 나는 그렇지 않다. 그러나 그것은 그것에 올지도 모른다. 저는 Apple-blessed way를하고 싶었지만, 인내심을 잃어 버렸습니다. # 4 : FM Pro. 나머지는 확실하지 않습니다. 다른 사람이 FM 기반의 프로그램을 실행하지 않는 상황에서 이러한 다양한 경우에 서로 다른 행동을 기대 하시겠습니까? – shanusmagnus
# 4 : 아무도 다른 사람이 FM을 실행하지 않는다면 일반적으로는 안됩니다. – pft221