【发布时间】:2022-02-28 09:30:09
【问题描述】:
我需要检查我们网络中的哪些设备, 哪个没有操作系统版本 1809 Windows 10,我需要进行扫描以确定那些从 AD 中提取数据的设备。
Try{$Domain = $(get-addomain).dnsroot}
Catch{$Domain = ""}
$Log = "C:\Temp\Audit\$Domain OS Compliance $(get-date -f yyyy-MM-dd).csv"
$Computers = Get-ADComputer -Filter {Enabled -eq $True} -Property * |
Select Enabled,Name,OperatingSystem,OperatingSystemVersion
foreach ($Computer in $Computers)
{
#properties
$Version = $Computer.OperatingSystemVersion
$Enabled = $Computer.Enabled
$Name = $Computer.Name
$OS = $Computer.OperatingSystem
}
#Windows10 Build 1908 check
If($OS -like "Windows 10*")
{
$Type = "Computer"
$CountComputers++
$Build = "1908"
$obj = New-Object PSobject
$obj | Add-Member NoteProperty -Name "Enabled" -Value $Enabled
$obj | Add-Member NoteProperty -Name "Name" -Value $Computer.Name
$obj | Add-Member NoteProperty -Name "Operating System" -Value
$Computer.OperatingSystem
$obj | Add-Member NoteProperty -Name "Version" -Value $Version
$obj | Add-Member NoteProperty -Name "Build" -Value $Build
}
$OutData = $OutData | sort -Property "Type","Name"
$OutData | Export-CSV $Log -notype -Encoding UTF8
write-host "Log Export Complete to $Log" -foregroundcolor yellow
我似乎在调用查询时做错了我不太熟悉 Powershell 任何人都可以分享我或给我任何输入,以便我制定自己的代码会有所帮助
【问题讨论】:
标签: windows powershell