我想要运行80个Php脚本。我想开始 Script1 等到完成开始 script2 ......
现在,如果我添加以下内容:
start C:\xampp\php\php.exe -f C:\xampp\Script1.php
start C:\xampp\php\php.exe -f C:\xampp\Script2.php
start C:\xampp\php\php.exe -f C:\xampp\Script3.php
当我执行我的批处理文件时,它将同时运行所有脚本。
我可以在我的bat文件中使用任何命令告诉系统等待脚本完成后再执行一次吗? 无论如何设置脚本之间的时间间隔?
我可以在cron选项卡中运行所有80个脚本,但是,我宁愿配置一个批处理文件来处理所有脚本,然后将此文件分配给crontab。
由于
答案 0 :(得分:1)
start
以异步方式触发任务,因此它们将同时运行。使用/wait
标志启动任务并等待它完成。
e.g。
start /wait C:\xampp\php\php.exe -f C:\xampp\Script1.php
start /wait C:\xampp\php\php.exe -f C:\xampp\Script2.php
start /wait C:\xampp\php\php.exe -f C:\xampp\Script3.php
或者,正如Marc B所述,删除启动调用也会给你顺序执行。
答案 1 :(得分:0)
正如Joseph Sibler建议的那样,你可以制作一个单独调用它们的PHP文件。您甚至可以使用类似xargs的东西生成该PHP文件(可在windows w / mingw32,cygwin和其他来源上获得)。
这样的事情应该这样做:
del single.php
dir /b Script*.php | xargs cat >> single.php
start c:\xampp\php\php.exe -f single.php