我有一个小的PHP脚本,如下所示:
<?php
$argument1 = $argv[1];
echo "passed Value:".$argument1;
//do something with passed value
//echo processed value
?>
我想使用cmd多次运行它。
这就是我目前的运行方式:
c:\php\php.exe MyScript.php 1
我想多次运行上面的cmd行,不同的值介于1到100之间。
有人能告诉我如何为传递给它的不同值多次运行它吗?
我希望能够读取每个php调用的输出并将其复制
答案 0 :(得分:4)
(FOR /L %x in (1,1,100) DO c:\php\php.exe MyScript.php %x)>output.txt 2>&1
>output.txt
将STDOUT重定向到文件。 2>&1
将STDERR重定向到同一个地方。
(注意:这是一个命令行语法。要在批处理文件中使用它,请使用%%x
而不是%x
)
答案 1 :(得分:2)
在shell本身中执行此操作:
FOR /L %parameter IN (start,step,end) DO command
例如:
FOR /L %x IN (1,1,100) DO c:\php\php.exe MyScript.php %x
在.bat文件中执行此操作:
FOR /L %%parameter IN (start,step,end) DO command
例如:
FOR /L %%x IN (1,1,100) DO c:\php\php.exe MyScript.php %%x
但是,我不知道这是否会输出结果。
来源:SS64
编辑:将%% x更改为%x并将%替换为%x - 感谢你们两位:D