加载后 Launchctl 不工作/记录

Posted

技术标签:

【中文标题】加载后 Launchctl 不工作/记录【英文标题】:Launchctl not working / logging after being loaded 【发布时间】:2017-09-17 02:24:14 【问题描述】:

这是我的文件,我没有记录任何内容,尽管加载显然是成功的,因为我可以看到它使用 list 命令运行;

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
        <key>Label</key>
        <string>com.whtDaily.gexUW</string>

        <key>ProgramArguments</key>
        <array>
            <string>/Users/x/Dropbox/ai/getData.sh</string>
        </array>

         <key>StartCalendarInterval</key>
         <dict>
           <key>Hour</key>
             <integer>22</integer>
           <key>Minute</key>
             <integer>15</integer>
         </dict>

        <key>RunAtLoad</key><true/>

        <key>StandardErrorPath</key>
        <string>/Users/x/Dropbox/ai/logs/daily.err</string>
        <key>StandardOutPath</key>
        <string>/Users/x/Dropbox/ai/logs/daily.out</string>
</dict>
</plist>

我也不清楚我是否需​​要在加载后运行“启动”,或者由于我将“RunAtLoad”键设置为 true,这是否会自动发生?我试过在加载后调用 start,但没有运气。

此 plist 文件位于 /Library/LaunchAgents 目录中,我正在调用加载和卸载 sudo。

【问题讨论】:

我不确定这是否是问题所在,但在处理启动代理时您不应该使用sudo launchctl。当以 root 身份运行时,launchctl(主要)处理启动守护进程,而不是代理。另外,输出和错误文件是未创建,还是已创建但为空? 谢谢我已经切换到用户,但仍然没有运气。输出文件已创建但为空 这表明作业正在运行,但由于某种原因脚本无法正常工作(并且以不产生输出的方式失败)。 【参考方案1】:

sh 文件不可执行。

chmod +x getData.sh 

成功了。

【讨论】:

以上是关于加载后 Launchctl 不工作/记录的主要内容,如果未能解决你的问题,请参考以下文章

ajax调用后使用jQuery插入记录不起作用

2020-04-12工作记录

重新加载 IFRAME 而不添加到历史记录

V-在控制台上提取后不显示记录[重复]

神奇的记录 NSFetchedResultsController NSManagedObject 更改保存不工作

从数据库中删除记录的Ajax脚本不工作。