执行bat文件到远程客户端

Execute bat file to remote client

我正在尝试打开一个 HTML 文件到客户端 "ClientA",该文件通过执行波纹管 powershell 命令

远程本地复制到文件夹 "C:.html"
$Username = 'username'
$Password = 'password'
$pass = ConvertTo-SecureString -AsPlainText $Password -Force
$Cred = New-Object System.Management.Automation.PSCredential -ArgumentList                 
$Username,$pass


Invoke-Command -ComputerName ClientA -ScriptBlock { Invoke-Expression - 
Command:"cmd.exe /c 'C:.bat'" } -credential $Cred

“1.bat”批次有以下行

START iexplore -k "C:.html"

我在执行时没有遇到错误...但是文件没有打开到远程客户端! 有什么想法吗?

谢谢!

脚本是正确的,内部没有错误,但它可能没有按照您的预期行事。

调用远程管理会话时,powershell 正在远程计算机上使用它自己的会话,它没有桌面交互,因此您不会在主 shell 中启动 Internet Explorer最终用户可能已登录的会话。

要仔细检查您的代码是否正常工作,您可以在 1.bat

中使用以下内容
START iexplore -k "C:.html"
echo %PATH% >> c:\patlog.txt
echo "DONE" >> c:_log.txt

您将在控制台上看到来自路径和最终 "DONE" 的回显,以确认 bat 已被执行。

无论如何,Internet Explorer 都不会出现在任何已登录的用户会话中,因为此页面也对此进行了讨论:

https://serverfault.com/questions/690852/use-powershell-to-start-a-gui-program-on-a-remote-machine