我想要做的是访问远程机器上的一个php脚本(http://..)。这是否可能?
输入crontab -e
来编辑您的cron表,输入crontab -l
来列出当前内容。输入man 1 crontab
以获取有关该命令的更多信息,输入man 5 crontab
以获取有关cron表文件格式的更多信息。
例如,要在每天上午10:00下载stackoverflow页面,请运行crontab -e
,输入此行,然后保存/退出。输出将写入您的主目录中的文件。
0 10 * * * /usr/bin/curl -s http://stackoverflow.com > ~/stackoverflow.html
<?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>
<false/>
<key>Label</key>
<string>local.mytask</string>
<key>ProgramArguments</key>
<array>
<string>/opt/local/bin/wget</string>
<string>http://someserver/somepage.php</string>
</array>
<key>StartInterval</key>
<integer>300</integer>
<key>RunAtLoad</key>
<true />
<key>StandardErrorPath</key>
<string>/dev/null</string>
<key>StandardOutPath</key>
<string>/dev/null</string>
</dict>
</plist>
然后在命令行中“激活”该文件:
sudo launchctl load /Users/my_username/Library/LaunchAgents/local.mytask.plist
~/.launchd.conf
文件,其中包含相同的行(不包括 sudo launch
)。load /Users/my_username/Library/LaunchAgents/local.mytask.plist
假设还有其他人在Snow Leopard上处理cron的问题,我将重新梳理一下这个老旧的主题。
是的,launchd应该取代cron,但实际上它无法完成cron可以完成的某些操作。
cron的集成效果不佳。如果它发送了一条消息,那么它最终会出现在/var/mail/user_name中,当然,Apple Mail对此一无所知。
使用crontab -e会提示“必须在原地编辑临时文件”。显然vim不兼容vi。然后你可以执行 crontab "< /tmp/crontab.whatever"(查看/tmp并查看实际使用的名称),它就会出现在正确的位置,并且假设你没有打错字,它也会正常工作。
是的,要解决所有这些问题确实需要一段时间 :(
launchd是非常强大的,但您真的不希望自己编写 plist 文件。请尝试使用Lingon。它是一个开源、设计良好的 GUI 工具,用于创建和管理系统的 launchd 任务。
自10.4版本起,Cron已被launchd替代。除非您计划在某个时候将它们移植到Linux/Unix系统上,否则您应该使用这个来编写您的任务。
如果您仍然决定使用cron,请尝试输入crontab -e
或sudo crontab -e
。这将为您提供不同的crontab文件,前者是当前正在运行的用户,后者是root用户。
“击中”URL可以通过许多方式实现。根据您使用的本地脚本来“击中”它,您可以使用一些语言内置的方法/类。例如,Ruby脚本将使用net/http,但如果您只是编写一个bash脚本,也可以尝试使用curl。键入man curl
以了解更多信息,但基本命令只是curl http://google.com
。
你不再需要使用cron了。正如其他人所说,它已被launchd取代,并且在Mac OS X上,launchd显然将是未来。
MacTech杂志最近一直在撰写关于launchd的系列文章,我强烈建议阅读它们。我知道我肯定学到了很多。
2009年9月(第25卷,第9期) 25.09 MacEnterprise:午餐时间的launchd
2009年10月(第25卷,第10期) Snow Leopard、Launchd和午餐 更多的launchd配方,以及Snow Leopard中的变化
MacTech还有其他文章,我建议在他们的网站上搜索。