Server 2003 列出 OU 中的 AD 对象

Server 2003 列出 OU 中的 AD 对象

我需要通过命令行列出 OU 内的对象。我知道我可以在 GUI 中使用“导出列表”,但我更愿意通过 CLI 来执行此操作。我可以使用管道输入来dsquery获取dsget群组成员,

# dsquery group -name "standardDistGroup"
"CN=standardDistGroup,OU=templateOU,DC=employees,DC=MyOrganization,DC=com"

# dsquery group -name "standardDistGroup"  | dsget group -members

"CN=John Doe,OU=templateOU,DC=employees,DC=MyOrganization,DC=com"
"CN=Otto Normalverbraucher,OU=templateOU,DC=employees,DC=MyOrganization,DC=com"

但相同的语法似乎不适用于获取 OU 容器对象。

# dsquery OU -name "ByeBye"
"OU=ByeBye,DC=employees,DC=MyOrganization,DC=com"

# dsquery OU -name "ByeBye"  | dsget ou -members

dsget failed:`-members' is an unknown parameter.
type dsget /? for help.
# dsquery OU -name "ByeBye"  | dsget group -members
dsget failed:OU=ByeBye,DC=employees,DC=MyOrganization,DC=com:The object class of the target does not match the one specified on the command line.
type dsget /? for help.

有人知道如何通过 CLI 实现这一点吗?此服务器上不提供 Powershell。

答案1

组有成员,OU 没有成员。OU包含其他对象。对于要在给定路径中列出的每种对象类型,您将需要使用略有不同的命令。

dsquery user OU=ByeBye,DC=employees,DC=MyOrganization,DC=com

dsquery computer OU=ByeBye,DC=employees,DC=MyOrganization,DC=com

dsquery ou OU=ByeBye,DC=employees,DC=MyOrganization,DC=com

使用 powershell 是实现此目的的更好方法。您可以使用get-adobject、查询对象get-aduserget-adcomputer还可以使用AD:后面的驱动器像文件系统一样浏览 AD import-module activeDirectory

相关内容