繁体   English   中英

如何从PHP执行批处理脚本

[英]How to execute a batch script from PHP

服务器规格Windows 2008Rc2 IIS7 mysql PHP 5.3

我有一个批处理文件,该文件执行mysql转储,然后压缩内容并使其可在公共文件夹中下载。 现在我知道此脚本有效,因为每次手动运行都可以正常运行,但是我似乎无法通过php来运行它。

基本上,我只希望能够调用将运行此批处理文件的php页面。

我知道已启用exec,因为我无法使用shell_exec来ping google.com,并且我可以获取输出。

我只用system()和exec()尝试过,但还是没有。 在某些情况下,页面看起来可以正常工作,但是它只是位于加载提示上。

我搜索过高和低尝试一百万种不同的命令组合,但它们似乎都不适合我。

我一直在尝试使用此简单命令,因为我可以从中执行ping操作。 尽管在调用页面时仅显示echo语句。

<?php

echo "Starting...";

echo shell_exec("C:\inetpub\wwwroot\DBZIP2");

echo "Success!";

?>

我也尝试过此方法,但是页面只是挂在加载屏幕上,并且不显示echo命令。

<?php

    echo "Starting...<br><br>";

    system("cmd /c START C:\inetpub\wwwroot\DBZIP2");

    echo "Success!";

?>

不太确定从这里去哪里。 我尝试过路径cmd.exe文件,但这没什么区别。 有没有更简单的方法可以做到这一点? 也许是另一种编程语言? 任何帮助表示赞赏。

尝试使用带有完整路径CMD.exe的“ shell_exec”执行

<?php
    echo "Starting...<br><br>";
    shell_exec("c:\WINDOWS\system32\cmd.exe /c START C:\inetpub\wwwroot\DBZIP2");
    echo "Success!";
?>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM