0

对于使用 PowerShell 的实验室,我必须针对特定的 OU 并在文本文件中列出以下信息。

专有名称
DNS主机名
启用
姓名
对象类
对象GUID
SamAccountName
SID
用户主体名称

我在网上找到了大量关于如何执行此操作的资源,并且无论我如何格式化它都会不断出错。

这是我的代码:

$ou = 'OU=Testing,OU=Labs,OU=UWEC Computers DC=uwec, DC=edu'
$Computers = Get-ADComputer -Filter '*' -SearchBase $ou
$Computers | foreach {
    $_.DNSHostName
} | Out-File -Filepath "C:\Windows\Temp\Lab7.txt"

无论我使用什么语法,我都会不断收到此错误:

Get-ADComputer:对象名称的语法错误
在行:1 字符:1
+ Get-ADComputer -Filter '*' -SearchBase 'OU=Testing,OU=Labs,OU=UWEC Co ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo : NotSpecified: (:) [Get-ADComputer], ADException
    + FullyQualifiedErrorId : ActiveDirectoryServer:8335,Microsoft.ActiveDirectory.Management.Commands.GetADComputer
4

1 回答 1

1

您发布的代码与您发布的错误不符。但是,最可能的错误原因是您的 OU 中缺少逗号:

$ou = 'OU=Testing,OU=Labs,OU=UWEC Computers DC=uwec, DC=edu'
#                                          ^right here

将其更改为

$ou = 'OU=Testing,OU=Labs,OU=UWEC Computers,DC=uwec, DC=edu'

问题应该消失了。

于 2019-01-10T20:37:58.207 回答