Powershell v5.1测试网络端口

时间:2017-01-14 01:13:03

标签: powershell

我想检查一下端口是否在Windows 7上使用PowerShell v5.1打开。

在我的Windows 10笔记本电脑上使用PowerShell v5.1我可以使用

Test-NetConnection -ComputerName <IP> -Port <Port> 

但是,在我的Windows 7笔记本电脑上找不到Test-NetConnection cmdlet。我有Test-Connection可用,但该cmdlet不允许我指定端口。

Windows 7上是否有方法使用PowerShell 5.1来测试网络端口是否已打开?如何获取Test-NetConnection cmdlet?

2 个答案:

答案 0 :(得分:3)

它有点麻烦但可以做到。 here已经在这里完成了。他还在开始时添加ping扫描。

下面的版本。如果您不想使用变量,只需手动输入IP和端口即可。

Test-NetConnection

ScriptingGuy 得到gnu使用Win7的答案。

谢谢,蒂姆。

答案 1 :(得分:3)

由于System.Net.Sockets.TcpClient似乎在端口未打开时抛出错误,我宁愿在这里使用try/catch

$ip = "127.0.0.1"
$port = "80"

try {
    $socket = New-Object System.Net.Sockets.TcpClient($ip, $port)

    if($socket.Connected) {
        "success"
        $socket.Close()
    }
} catch {
    "error"
}