Powershell如果声明不起作用

时间:2017-09-16 10:42:52

标签: powershell

我不太熟悉脚本,目前我正在尝试使用脚本来检查你所连接的ssid。
如果它是安全的,它将显示你是安全的,如果你连接到开放的wifi,它会告诉你,你不安全。

下面的脚本

function Test-WiFiSecured{
    $props = netsh wlan show interfaces | 
        Select-Object -skip 4 |
        Where{$_.Trim()} |
        ForEach-Object{ $_ -replace ':', '=' } |
        Out-String |
        ConvertFrom-StringData
    $wifi = [pscustomobject]$props
    Write-Host 'Authentication='$wifi.Authentication -ForeGround Green
    if($wifi.Profile -eq 'Open'){
        Write-Host 'Not secure' -ForeGround Red
    } else {
        Write-Host 'Secure connection' -ForeGround Green
        return $true
    }
}
Test-WiFiSecured  

任何帮助都值得欣赏,因为我现在完全没有想法

谢谢

1 个答案:

答案 0 :(得分:3)

您正在检查$wifi.Profile -eq 'Open',但$wifi.Profile是个人资料名称,通常是您所连接的SSID。可能你需要比较$wifi.Authentication。但是,您可以通过输出$wifi对象轻松验证正确的属性。