繁体   English   中英

如何使用 PHP 打开一个新的 CMD window

[英]how to open a new CMD window using PHP

在过去的几天里,我试图在 PHP 中编写一些代码来弹出一个CMD windows 而这个CMD windows 有一个像“ ping google.com ”这样的命令并处理它
我不需要 PHP 代码来读取结果,我只希望它运行它我尝试了一些类似的东西

<?php     
exec('C:\Windows\System32/cmd.exe ping google.com');     
<?

但没有结果(我不知道它是否在后台运行)
所以我读了这篇文章,并建立了很多方法,但没有任何效果

我的操作系统是 windows,非常感谢大家:)

答案是
我搜索了很多找到它:))

<?
execInBackground('start cmd.exe @cmd /k "ping google.com"');



function execInBackground($cmd) { 
    if (substr(php_uname(), 0, 7) == "Windows"){ 
        pclose(popen("start /B ". $cmd, "r"));  
    } 
    else { 
        exec($cmd . " > /dev/null &");   
    } 
}
?>

一个真正的命令提示符怎么样? 这是一个允许PHP获取动态与真实cmd终端进行交互的项目。 在此处获取: https//github.com/merlinthemagic/MTS

下载后,您只需使用以下代码:

//if you prefer Powershell, replace 'cmd' with 'powershell'
$shellObj    = \MTS\Factories::getDevices()->getLocalHost()->getShell('cmd');

$strCmd1   = 'ping -n 4 www.google.com';
$return1   = $shellObj->exeCmd($strCmd1);

返回将为您提供cmd命令返回OR错误,就像您坐在控制台一样。

此外,您可以针对$ shellObj发出任何您喜欢的命令,在PHP脚本的整个生命周期中都会维护该环境。 因此,不是在脚本文件中捆绑命令,而是使用exeCmd()方法逐个发出它们,这样您也可以处理返回和任何异常。

它很简单shell_exec('ping google.com') ,打开一个新的 window 你可以使用以下命令

shell_exec('start cmd.exe @cmd /k "ping google.com"')

这将打开一个新的提示符 window,即使您可以输入多个命令

shell_exec('start cmd.exe @cmd /k "ping google.com & ping facebook.com"')

暂无
暂无

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

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