帮我写一个批量查询device.txt文件里的设备,在AD域中这些设备所在组的powershell脚本,并将结果导出到group.txt
时间: 2024-04-13 22:30:06 浏览: 7
当然可以!以下是一个示例的 PowerShell 脚本,用于批量查询 `device.txt` 文件中的设备,在 AD 域中这些设备所在的组,并将结果导出到 `group.txt` 文件:
```powershell
# 连接到 AD 域控制器
$domainController = "yourDomainControllerName"
Connect-ADServiceAccount -Credential (Get-Credential) -Server $domainController
# 读取设备列表文件
$devices = Get-Content -Path "device.txt"
# 创建一个空的结果数组
$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` 替换为实际的域控制器名称,并确保在脚本所在的目录创建一个名为 `device.txt` 的文件,并在其中列出要查询的设备名称,每行一个设备。运行脚本后,它将逐个查询每个设备所在的组,并将结果导出到名为 `group.txt` 的文件中。
希望这对你有所帮助!如果还有其他问题,请随时提问。