lar*_*400 1 powershell powershell-2.0 powershell-3.0
我有以下情况,我一直试图上班,但现在不能.我希望它通过并获得netsh命令的输出,但我需要的是检查三个输出.
如果我只运行它,这是命令输出:
netsh int tcp show global | where {$_ -match ': disabled'}
Receive-Side Scaling State : disabled
Chimney Offload State : disabled
Direct Cache Acess (DCA) : disabled
Receive Window Auto-Tuning Level : disabled
ECN Capability : disabled
RFC 1323 Timestamps : disabled
Run Code Online (Sandbox Code Playgroud)
然后,如果我运行以下来获得例如"Chimney Offload State"并检查它是否设置为DISABLED然后它失败并且进入ELSE声明说它被设置为ENABLED当它不是...任何想法如何解决请这个:
码:
clear
$netsh = netsh int tcp show global | where {$_ -match ': disabled'}
if ($netsh -eq 'Chimney Offload State : disabled')
{
Write-Host "TCP Chimney disabled"
}
else
{
Write-Host "TCP Chimney is ENABLED - WRONG!!!"
}
Run Code Online (Sandbox Code Playgroud)
另一种方法是对结果进行客观化:
$pso = New-Object -TypeName PSObject
netsh int tcp show global | where {$_ -match ':'} | foreach{
$item = $_.Split(':') -replace '\s|-|\(|\)'
$pso | Add-Member -MemberType NoteProperty -Name $item[0] -Value $item[1]
}
if($pso.ChimneyOffloadState -eq 'disabled')
{
...
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2504 次 |
| 最近记录: |