0

嗨听说你可以将 cron 作业写入 plist 并以 plist 格式将其放入 JB iPhone /Library/LaunchDaemons 文件夹

我想每 300 秒备份一次照片文件夹,所以我将这样的 com.backup.plist 放入 /Library/LaunchDaemons 文件夹

<?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>KeepAlive</key>
    <true/>

    <key>Label</key>
    <string>com.backup</string>

    <key>Program</key>
    <string>/bin/cp</string>

    <key>ProgramArguments</key>
    <array>
        <string>-u</string>
        <string>/private/var/mobile/Media/DCIM/100APPLE/*.*</string>
        <string>/private/var/backup</string>
    </array>

    <key>StartInterval</key>
    <integer>300</integer>

</dict>
</plist>

我创建了一个 /private/var/backup 文件夹,访问权限为 777 mobile:mobile

我重新启动了 iPhone,但是脚本不起作用

失败是指“cp”命令访问权限吗?还是应该将 /private/var/backup 文件夹访问权限更改为其他内容?

顺便说一句,我正在运行 iOS 4.3.3 越狱 iPhone 4

非常感谢阅读

4

1 回答 1

0

我没有在 iPhone 上使用 launchd,但在 Mac OS X 上,ProgramArguments 的第一个字符串必须是程序名称本身。尝试从以下位置更改该部分:

<key>ProgramArguments</key>
<array>
    <string>-u</string>
    <string>/private/var/mobile/Media/DCIM/100APPLE/*.*</string>
    <string>/private/var/backup</string>
</array>

至:

<key>ProgramArguments</key>
<array>
    <string>cp</string>
    <string>-u</string>
    <string>/private/var/mobile/Media/DCIM/100APPLE/*.*</string>
    <string>/private/var/backup</string>
</array>
于 2011-08-11T03:44:47.357 回答