1

我需要获取简单监控工具的服务状态。在本地获取状态没有问题,但是当我尝试像这样在远程计算机上获取服务状态时:

<?php 
$output = shell_exec('powershell.exe "(get-service Webclient -computername server1).Status"');
echo "Webclient:  $output ";
?>

我什么都得不到。server1 上的 WinRM 设置为接收请求并允许远程访问。远程 server1 上的 Get-Service 在控制台窗口中运行良好。

这有效(本地):

<?php 
$output = shell_exec('powershell.exe "(get-service Webclient).Status"');
echo "Webclient:  $output ";
?>

我试图将 shell_exec 更改为 exec 或 system,但没有任何效果。谢谢你。

4

1 回答 1

0

我目前正在尝试做同样的事情,这段代码非常有帮助。谢谢你。虽然我想到了您的问题,但可能是您需要允许脚本在远程服务器上运行。

于 2013-08-22T07:20:07.307 回答