Schemalägga php-script i OSX Lion

För att schemalägga script i OSX Lion används launchd. Lägg till ett jobb genom att spara en .plist i mappen /Users/%användare%/Library/LaunchAgents. Ett exempel på en .plist är:

<?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>se.christianengvall.phptelldus</string>
 <key>ProgramArguments</key>
 <array>
 <string>/usr/bin/php</string>
 <string>/Users/%användare%/Sites/Telldus/hello.php</string>
 </array>
 <key>StartInterval</key>
 <integer>10</integer>
 </dict>
</plist>

Under Label namnger man sitt jobb, som man sedan kan se genom att skriva “launchctl list” i terminalen.
I ProgramArguments anges att vi vill använda php för att köra filen hello.php.
StartInterval anger i sekunder hur ofta jobbet kommer att köras.

i hello.php finns logiken man vill utföra, här är ett exempel som skriver ut ett meddelande i Systemmeddelanden:


<?php
 syslog(LOG_WARNING, "meddelande som syns i sysstemmeddelanden");
?>

För att köra jobbet läggs det till genom att skriva följande i ett terminalfönster:


launchctl load  /Users/%användarnamn%/Library/LaunchAgents/se.christianengvall.phptelldus.plist

Starta sedan Systemmeddelanden och klicka på “Alla meddelanden” så kommer texten “meddelande som syns i sysstemmeddelanden” dyka upp var tionde sekund.

Stoppa sedan jobbet genom att skriva:

launchctl unload  /Users/%användarnamn%/Library/LaunchAgents/se.christianengvall.phptelldus.plist
blog comments powered by Disqus