我尝试使用powershell检查端口是否打开,如下所示。
(new-object Net.Sockets.TcpClient).Connect("10.45.23.109", 443)
此方法有效,但输出不是用户友好的。这意味着如果没有错误,那么它就有访问权。有没有办法检查是否成功,并显示一些消息,如“端口443可操作”?
发布于 2012-03-08 15:06:41
实际上,谢伊·列维的回答几乎是正确的,但正如我在他的评论专栏中提到的那样,我遇到了一个奇怪的问题。因此,我将命令拆分为两行,它可以很好地工作。
$Ipaddress= Read-Host "Enter the IP address:"
$Port= Read-host "Enter the port number to access:"
$t = New-Object Net.Sockets.TcpClient
$t.Connect($Ipaddress,$Port)
if($t.Connected)
{
"Port $Port is operational"
}
else
{
"Port $Port is closed, You may need to contact your IT team to open it. "
}
发布于 2014-09-19 07:33:46
如果你运行的是Windows8/ Windows Server2012或更新版本,你可以在PowerShell中使用Test-NetConnection命令。
例如:
Test-NetConnection -Port 53 -ComputerName LON-DC1
发布于 2012-03-05 20:54:25
您可以检查Connected属性是否设置为$true并显示一条友好的消息:
$t = New-Object Net.Sockets.TcpClient "10.45.23.109", 443
if($t.Connected)
{
"Port 443 is operational"
}
else
{
"..."
}
https://stackoverflow.com/questions/9566052
复制相似问题