Tôi có một tệp plist launchd mà tôi sử dụng để chạy một chương trình tại một thời điểm được chọn mỗi ngày. Nó hoạt động, nhưng nó cũng chạy chương trình bất cứ khi nào tôi khởi động máy tính hoặc giải nén và tải lại công việc bằng chương trình GUI LaunchControl --- ngay cả khi tôi có RunAtLoadkhóa được đặt thành false?
Các tập tin đầy đủ là dưới đây; nó nằm ở /Library/LaunchAgents/:
<?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>RunAtLoad</key>
<false/>
<key>KeepAlive</key>
<dict>
<key>SuccessfulExit</key>
<false/>
</dict>
<key>Label</key>
<string>com.adbot.plist</string>
<key>LowPriorityIO</key>
<true/>
<key>Program</key>
<string>/Users/wcm1/programming/ricedh/adbot/adbot.py</string>
<key>StandardErrorPath</key>
<string>/tmp/com.adbot.plist.err</string>
<key>StandardOutPath</key>
<string>/tmp/com.adbot.plist.out</string>
<key>StartCalendarInterval</key>
<array>
<dict>
<key>Hour</key>
<integer>10</integer>
<key>Minute</key>
<integer>30</integer>
</dict>
</array>
</dict>
</plist>
Suy nghĩ?
KeepAliveđịnh nghĩa của tôi là ngụ ýRunAtLoad, và thậm chí ghi đè nỗ lực của tôi để đặtRunAtLoadthành sai. Không chắc chắn tại sao đây là trường hợp, nhưng việc đưa raKeepAlivekhối dường như đã khắc phục vấn đề.