我想编写一个脚本来检查随机 IP 或主机名以查看端口是否打开。这是我到目前为止所拥有的。脚本名称是检查端口。
foreach ($xhost in $computername){
Write-Host $xhost
foreach ($port in $ports) {
$Socket = New-Object System.Net.Sockets.TCPClient
$Connection = $Socket.BeginConnect($xhost,$port,$null,$null)
$Connection.AsyncWaitHandle.WaitOne(5000,$false) | out-null
if ($Connection -eq $true)
{ write-host = "$xhost port $port is open" }
else
{ write-host = "port $port is closed" }
$Socket.EndConnect($Connection)
$Socket.Close()
}
}
我想通过以下方式输入值: .\checkport '192.186.1.5' or '192.168.1.5', '192.168.1.105', 192.168.1.110' | 检查端口
它似乎没有读取 IP 地址或显示结果。
我想知道是否有人可以指出那里可以告诉我我在这个脚本中做错了什么?