Jestem ciekawy, czy można określić zmienną envrionment w ProgramArguments
części skryptu luanchd w Mac OS X Leopard.
<?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
opcję do / bin / sh?Nie sądzę, aby uruchomiona wiedziała o środowisku natywnie, przynajmniej nie jako podstawienia $ {VARIABLE}.
Nic nie stoi na przeszkodzie, abyś uruchomił skrypt powłoki (lub powłokę
-c
) podczas działania uruchomionego, a to miałoby środowisko i szanowałoby $ {ZMIENNE} - W takim przypadku pamiętaj o różnicy między demonami / agentami Systemu i Użytkownika. chociaż...źródło
Nie jestem pewien - nie próbowałem tego wcześniej ... ale mogę ci powiedzieć, że jeśli jedyną zmienną, na której ci zależy, jest dom - możesz użyć ~.
źródło
"/bin/sh: ~/bin/attach-devroot.sh: No such file or directory"
EnableGlobbing
flaga jest ustawiona na true. Zobacz stronę manuala launchd.plist .EnableGlobbing
nie jest już obsługiwany