帮我写一个批量查询AD域中设备所在组的powershell脚本,并将结果导出到group.txt
时间: 2024-04-13 08:29:40 浏览: 13
当然可以!以下是一个示例的 PowerShell 脚本,用于批量查询 AD 域中设备所在的组,并将结果导出到 `group.txt` 文件:
```powershell
# 连接到 AD 域控制器
$domainController = "yourDomainControllerName"
Connect-ADServiceAccount -Credential (Get-Credential) -Server $domainController
# 定义设备列表
$devices = @(
"Device1",
"Device2",
"Device3"
)
# 创建一个空的结果数组
$results = @()
# 遍历设备列表
foreach ($device in $devices) {
# 查询设备所在的组
$groups = Get-ADComputer -Identity $device | Get-ADPrincipalGroupMembership
# 构建结果字符串
$result = "设备 '$device' 所在组:`r`n"
foreach ($group in $groups) {
$result += "- $($group.Name)`r`n"
}
# 将结果添加到数组
$results += $result
}
# 将结果导出到文件
$results | Out-File -FilePath "group.txt" -Encoding UTF8
Write-Host "查询结果已导出到 group.txt 文件。"
```
请将 `yourDomainControllerName` 替换为实际的域控制器名称,并在 `$devices` 数组中列出要查询的设备名称。运行脚本后,它将逐个查询每个设备所在的组,并将结果导出到名为 `group.txt` 的文件中。
希望这对你有所帮助!如果还有其他问题,请随时提问。