获取文件中服务器列表的计算机对象属性

获取文件中服务器列表的计算机对象属性

当我运行 Get-ADComputer cmdlet 时,我可以查看所有单个对象的属性,如下所示。

C:\PS>Get-ADComputer "Fabrikam-SRV1" -Properties *


AccountExpirationDate              :
accountExpires                     : 9223372036854775807
AccountLockoutTime                 :
AccountNotDelegated                : False
AllowReversiblePasswordEncryption  : False
BadLogonCount                      :
CannotChangePassword               : False
CanonicalName                      : Fabrikam.com/Computers/fabrikam-srv1

然后我可以过滤在输出中显示的属性。是否可以获取文件(txt 或 csv)中计算机对象列表的所有属性,然后过滤所需的属性?

像这样Get-ADComputer -Computer (Get-Content -Path .\computers.txt) | Select CanonicalName,CN,DistinguishedName

答案1

是否可以获取文件(txt 或 csv)中计算机对象列表的所有属性,然后过滤所需的属性?

是的。假设文件computers.txt每行仅包含一个计算机名称。

Get-Content computers.txt |
  Get-ADComputer -Properties * |
    Select-Object CanonicalName, CN, DistinguishedName

此外,您可以跳过-Properties *(如果处理多台计算机,速度可能会很慢),只需选择除默认属性之外要检索的属性即可。 包含DistinguishedName在默认集合中。

Get-ADComputer -Properties CanonicalName, CN

如果你有 CSV,你需要确定哪个列或标题名称包含计算机名称。如果您提供示例格式的 CSV,我会更新我的答案。

相关内容