【问题标题】:(Evasi0n JB) iOS 6 launchd change in syntax?(Evasi0n JB) iOS 6 启动了语法变化?
【发布时间】:2013-02-11 13:27:10
【问题描述】:

从 iOS 5.x 到 iOS 6.1,launchd (LaunchDaemons) 文件的语法是否有任何变化?

我试图从我的 iOS 5.1 iPhone4s 安装一些东西到 iPhone5(运行带有 Evasi0n 的 iOS 6.1 JB),它给了我这个错误(在 /var/log/syslog 中):

com.apple.launchd[1] (com.mydom.myScrpt[2601]): (com.mydom.myScrpt) Exited with code: 1

这不是“myScrpt”问题,因为我将 myScrpt 更改为:

#!/bin/sh
echo "----Test---"

但 /var/log/syslog 中唯一的东西是错误,没有别的 (在我的 iPhone4s 上做同样的事情,打印"----Test---" 行)。

我的 launchd 文件(在 14:00 以 root 身份运行 myScrpt)的语法是

{
    Label = "com.mydom.myScrpt";
    LowPriorityIO = 1;
    Nice = 9;
    ProgramArguments =     (
        "/private/var/root/bin/myScrpt"
    );
    StartCalendarInterval =     {
        Hour = 14;
        Minute = 00;
    };
    UserName = root;
}

我做错了什么?我应该如何编写我的启动文件以在 14:00 运行我的命令?

【问题讨论】:

    标签: ios launchd


    【解决方案1】:

    在你的launchd文件中添加这个:

    <key>StandardOutPath</key>
    <string>/var/log/syslog.mine</string>
    

    获取脚本的输出。

    这大概就是从 iOS5 到 iOS6 的“变化”吧。 现在您必须指定输出,默认情况下不使用“syslog”。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-11-06
      • 1970-01-01
      • 1970-01-01
      • 2015-01-14
      • 1970-01-01
      • 2017-01-23
      • 1970-01-01
      相关资源
      最近更新 更多