第一次在这里发布海报,我有点初学者,我一直热衷于让我的 PowerShell 脚本技能达到标准,但我遇到了一些相当令人困惑的事情......
我制作了一个脚本来查询一组计算机,我想查询 Win32_OperatingSystem 但只推断内部版本号,以便我可以用它填充我的 PSObject。我正在尝试添加一些 If 逻辑,以便如果内部版本号是 7601,我可以在我的 OS 列下写一条消息。
我遇到的问题是 BuildNumber 值以 @{BuildNumber=7601} 而不是 7601 的形式出现。那,我的 If 语句很无聊。
$Machines = Get-Content .\Computers.txt
Foreach($Machine in $Machines)
{
$sweet = (Get-WmiObject -Class Win32_OperatingSystem -computer $Machine | Select-Object BuildNumber)
$dversion = if ($sweet -eq "@{BuildNumber=7601}") {Yes!} else {"Nooooo!"}
New-Object PSObject -Property @{
ComputerName = $Machine
Sweet = $sweet
OS = $dversion
}
}