【发布时间】:2011-02-15 09:09:31
【问题描述】:
我编写了一个 PHP 脚本,它生成一个包含我数据库中所有表的 SQL 文件。 我想要做的是每天或每 n 天执行一次这个脚本。我已阅读有关 cron 作业的信息,但我使用的是 Windows。如何在服务器上自动执行脚本?
【问题讨论】:
标签: php windows automation scheduled-tasks scheduling
我编写了一个 PHP 脚本,它生成一个包含我数据库中所有表的 SQL 文件。 我想要做的是每天或每 n 天执行一次这个脚本。我已阅读有关 cron 作业的信息,但我使用的是 Windows。如何在服务器上自动执行脚本?
【问题讨论】:
标签: php windows automation scheduled-tasks scheduling
您需要添加计划任务来调用 URL。
首先,在这里阅读: MS KB - 适用于 Windows XP。
其次,你需要一些方法来调用 URL - 我建议使用类似 wget - 这样你可以调用 URL 并将输出保存到文件中,这样你就可以看看调试输出是什么。您可以获取 wget on this page。
最后一步是,正如 Gabriel 所说,编写一个批处理文件来绑定所有这些,然后就可以走了。
e:wget 使用起来非常简单,但是如果您有任何问题,请发表评论,我会提供帮助。
ee:想想看,你甚至不需要批处理文件,直接调用 wget 就可以了..
【讨论】:
添加计划任务以请求 url。使用批处理文件或脚本文件 (WSH)。
http://blog.netnerds.net/2007/01/vbscript-download-and-save-a-binary-file/
此脚本将允许您从 Web 源下载二进制数据。修改它以适合您的特定情况。此 vbs 文件可以直接运行,也可以从脚本中执行。或者,您不必使用脚本保存文件,您只需输出内容(WScript.Echo objXMLHTTP.ResponseBody)并利用 CMD 输出到文件参数:
cscript download.vbs > 日志文件.log
将那个坏男孩保存在一个有用的 .bat 文件中,并在调度程序中调用它:http://lifehacker.com/153089/hack-attack-using-windows-scheduled-tasks
【讨论】:
Cron 并非总是在许多托管帐户上可用。
但是试试这个: http://www.phpjobscheduler.co.uk/ 它是免费的,有一个有用的界面,所以你可以看到所有的计划任务,并且可以在任何提供 php 和 mysql 的主机上运行。
【讨论】:
您可以使用ATrigger 调度服务。 PHP library 也可用于创建计划任务而无需开销。报告、分析、错误处理和更多好处。
免责声明:我是 ATrigger 团队的一员。这是一个免费软件,我没有任何商业目的。
【讨论】:
Windows 没有 cron,但它带有 'at' 命令。它不像 cron 那样灵活,但它允许您安排任意任务以从命令行执行。
【讨论】:
是的,您可以在 Windows 上安排和执行您的 php 脚本以自动运行。在像 os 这样的 linux 中,您将拥有 cron,但在 Windows 上,您可以使用任务调度程序来安排任务。
【讨论】:
如果您的代码位于远程托管服务器中,请为其创建一个 cron 作业。 否则,如果在本地,则在 windows 中使用计划任务。它很容易实现。我的服务器运行着这么多计划任务。
【讨论】: