![](/img/trans.png)
[英]How do I restart a windows service on an Azure VM remotely from my office desktop using powershell?
[英]How do I remotely start a VM on VMWare Workstation using Powershell?
我有VMWare工作站和PowerShell的初学者知识。
我创建了一个脚本,可以使用vmrun
工具在本地计算机上成功启动VM。 但是,如果我通过远程会话运行它,则不会发生任何事情。 知道为什么吗?
Get-PSSession | Remove-PSSession
$VMHostMachine | New-PSSession
$rs = Get-PSSession # testing using localhost
Write-Debug ("Now starting VM on host: " + $VMHostMachine)
$script = {param($VMImagePath, $VMConsolePath);
$QuotedVMPath = "`"{0}`"" -f $VMImagePath
$Result = Start-Process -FilePath $VMConsolePath -ArgumentList "-T", "ws", "start", $QuotedVMPath -Wait -PassThru -NoNewWindow
}
Invoke-Command -Session $rs -ScriptBlock $script -ArgumentList $vmConfig.VMImagePathOnHost, $vmConfig.VMRunUtiltyPath
如果删除会话参数,则Invoke-Command
有效:
Invoke-Command -ScriptBlock $script -ArgumentList $vmConfig.VMImagePathOnHost, $vmConfig.VMRunUtiltyPath
我有一个类似的脚本,可以通过PSSession成功还原到本地主机上的快照,为什么启动VM会给我带来麻烦?
如果您“输入pssession”然后尝试调用,它是否有效?
我在这里假设它“不起作用”,因为您通过PSSession在没有可见的桌面/ gui-session的情况下调用命令,并且您期望VMWare工作站出现吗? 接收端是服务。
您可以使用Get-Process检查进程是否正在运行VMWare。
要在这里完成您想实现的目标,您可以看一下PsExec,它可以将应用程序启动到活动会话中。
https://technet.microsoft.com/zh-CN/sysinternals/bb897553.aspx
注意PSExec上的“ -i”参数。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.