我想知道用户的计算机是否已经通过powershell命令加入了特定机构的域。
我尝试了下面的命令来检查域加入状态,但命令只显示了域是否已加入,但如果我想特别检查某个公司网络的域== "XXX“,该怎么办。
PS C:\windows\system32> (Get-WmiObject -Class Win32_ComputerSystem).PartOfDomain
True发布于 2021-02-06 20:04:09
你已经在正确的轨道上了,你只是查询了错误的属性。
(Get-CimInstance -ClassName Win32_Computersystem).Domain发布于 2021-02-06 21:26:22
您可以从Win32_Computersystem类中获得更多。下面是一个帮助器函数,您可以使用它来获取该信息:
function Get-ComputerInformation {
[CmdletBinding()]
param(
[Parameter(Mandatory = $false, ValueFromPipeline = $true, Position = 0)]
[string[]]$ComputerName = $env:COMPUTERNAME,
[switch]$AsHashTable
)
foreach ($computer in $ComputerName) {
# System info
$data = Get-CimInstance -ClassName Win32_ComputerSystem -ComputerName $computer
$domainRole = switch ($data.DomainRole) {
0 {'Standalone Workstation'; break}
1 {'Member Workstation'; break}
2 {'Standalone Server'; break}
3 {'Member Server'; break}
4 {'Backup Domain Controller'; break}
5 {'Primary Domain Controller'}
}
$pcinfo = [ordered]@{}
$pcinfo.'Computer' = $data.Name
$pcinfo.'Manufacturer' = $data.Manufacturer
$pcinfo.'Model' = $data.Model
$pcinfo.'PhysicalMemory' = "{0:N2} GB" -f ($data.TotalPhysicalMemory/1GB)
$pcinfo.'PartOfDomain' = $data.PartOfDomain
if ($data.PartOfDomain) {
$pcinfo.'Domain' = $data.Domain
}
else {
$pcinfo.'WorkGroup' = $data.Workgroup
}
$pcinfo.'DomainRole' = $domainRole
$pcinfo.'LoggedOnUser' = $data.Username
if ($AsHashTable) { $pcinfo }
else { [PsCustomObject]$pcinfo }
}
}https://stackoverflow.com/questions/66076467
复制相似问题