在我的Xampp windows服务器中设置此命令所需的帮助
0 * * * * cd C:/xampp/htdocs/plugins/moviefeed/ && php cron.php
你能告诉我的正确方向吗
感谢
在Windows操作系统上没有cron。。。。您需要使用Windows中的调度程序任务来创建"Cronjob"。使用windows调度程序的示例
VladH写了/st,我认为应该是/sc
打开命令提示符并键入
schtasks /create /tn "XamppCron" /tr "L:'xampp'php'php.exe L:'xampp'htdocs'mydevsite'cron.php" /sc minute /mo 10
一旦您对cron感到满意,如果您以php-win.exe运行,则不会在每次运行任务时显示命令提示符窗口。
您可以轻松地创建一个.bat文件,在该文件中定义您的windows调度任务。关于您的需求。。
set doc=C:'xampp'htdocs'project
cd "%doc%"
copy /y nul "file.php"
ECHO ^<?php echo 'This is executed via scheduler task!'; ?^> >file.php
schtasks /create /tn "Cron" /tr "C:'Program Files (x86)'Mozilla Firefox'firefox.exe http://play.local/fisierul.php" /st minute /mo 10
我在这里做的是:
- 我将路径从"htdocs"更改为"project"目录
- 我创建了一个文件"file.php"(如果它不存在)
- 我在"file.php"文件中写了一个简单的echo
- 我创建了一个新的调度器任务(类似于Unix中的cron作业),它将打开我的mozilla浏览器,每10分钟访问一次该url
注意:要停止调度程序任务,必须进入cmd并键入
schtasks /delete /tn "Cron"
祝你好运,伙计!
我不添加任何新内容,只添加一个测试用例。对于一个简单的cron作业来说,使用Task Scheduler GUI会很麻烦/没有必要,所以这个演示使用.bat
文件。演示所做的只是每分钟将"counter.txt"中的数字增加1。
在"htdocs"中创建了一个"cron"文件夹,其中包含以下文件:
- counter.txt
- index.php
- schtask_add.bat
- schtask_del.bat
- schtask_query.bat
文件内容:
counter.txt
0
index.php
<?php
$filepath = "C:/xampp/htdocs/cron/counter.txt";
$i = file_get_contents($filepath);
$i = (int) $i;
$i++;
file_put_contents($filepath, $i);
schtask_add.bat
@echo off
schtasks /Create /TN XAMPP /TR "C:/xampp/php/php-win.exe C:/xampp/htdocs/cron/index.php" /SC MINUTE /MO 1
pause
schtask_del.bat
@echo off
schtasks /Delete /TN XAMPP /F
pause
schtask_query
@echo off
schtasks /Query /TN XAMPP
pause
在Windows 10(64位)上使用XAMPP 7.1.11进行了测试。
Schtasks.exe|Microsoft文档
Schtasks-计划任务-Windows CMD-SS64.com
PHP:CLI和CGI-手动(PHP.exe与PHP-win.exe)
Cron是一个用于计划任务的Unix应用程序,要在Windows下获得相同的结果,您需要使用任务管理器。
首先,您创建一个简单的任务,每天从0:00开始。然后,你进入高级。。。(或类似操作,具体取决于您所使用的操作系统),然后选择"每60分钟重复一次"。