Ich bin gespannt, ob es möglich ist, eine Umgebungsvariable im ProgramArguments
Teil eines Luanchd-Skripts unter Mac OS X Leopard anzugeben .
<?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>Label</key>
<string>me.mpietz.MountDevRoot</string>
<key>ProgramArguments</key>
<array>
<string>/bin/sh</string>
<string>$HOME/bin/attach-devroot.sh</string>
<!-- Instead of using...
<string>/Users/mpietz/bin/attach-devroot.sh</string -->
</array>
<key>RunAtLoad</key>
<true/>
</dict>
</plist>
-c
Option zu / bin / sh? Hinzufügen .Ich glaube nicht, dass launchd die Umgebung von Haus aus kennt, zumindest nicht als $ {VARIABLE} -Ersetzung.
Es hält Sie jedoch nichts davon ab, ein Shell-Skript (oder eine Shell mit
-c
) als Ihre launchd-Aktion zu starten. Dies hätte eine Umgebung und würde $ {VARIABLES} respektieren. Beachten Sie in diesem Fall den Unterschied zwischen System- und Benutzerdämonen / -agenten obwohl...quelle
Ich bin mir nicht sicher - ich habe es noch nie versucht ... aber ich kann Ihnen sagen, dass Sie ~ verwenden können, wenn die einzige Variable, die Sie interessiert, home ist.
quelle
"/bin/sh: ~/bin/attach-devroot.sh: No such file or directory"
EnableGlobbing
Flag auf true gesetzt ist. Siehe die Manpage launchd.plist .EnableGlobbing
nicht mehr unterstützt