我需要发出mstsc并获得一个状态,这个命令适用于一系列IP。没有RDP控制台。
我不能使用WMI端口,只能使用RDP 3389到设备。很想使用PowerShell远程命令,但我读到他们使用的WMIObjects意味着使用WMI端口。
我使用了psexec并使用了WMI端口。这在我的实验室工作,但是当我点击真正的防火墙时,阻止了。
我尝试了多种方法,每种方法都会点击WMI端口或导致RDP控制台在服务器上弹出。我还需要将事件报告回连接或未找到文件以供进一步决策。
答案 0 :(得分:0)
终端服务是为了交互式使用而非批处理模式。如果要检查PowerShell中是否可以访问端口,可以尝试与其建立TCP连接:
$servers = ...
foreach ($server in $servers) {
$clnt = New-Object Net.Sockets.TcpClient
try {
$clnt.Connect($server, 3389)
"$server:`tOK"
} catch {
"$server:`tnot available"
} finally {
$clnt.Dispose()
}
}
在最近的Windows版本中,还有Test-NetConnection
:
$servers = ...
foreach ($server in $servers) {
Test-NetConnection -Computer $server -Port 3389
}