Get one or more Active Directory organizational units.
Syntax Get-ADOrganizationalUnit [-Identity] ADOrganizationalUnit [-AuthType {Negotiate | Basic}] [-Credential PSCredential] [-Partition string] [-Properties string[]] [-Server string] [CommonParameters] Get-ADOrganizationalUnit -Filter string [-ResultPageSize int] [-ResultSetSize Int32] [-SearchBase string] [-SearchScope {Base | OneLevel | Subtree}] [-AuthType {Negotiate | Basic}] [-Credential PSCredential] [-Partition string] [-Properties string[]] [-Server string] [CommonParameters] Get-ADOrganizationalUnit -LDAPFilter string [-ResultPageSize int] [-ResultSetSize Int32] [-SearchBase string] [-SearchScope {Base | OneLevel | Subtree}] [-AuthType {Negotiate | Basic}] [-Credential PSCredential] [-Partition string] [-Properties string[]] [-Server string] [CommonParameters] Key -AuthType {Negotiate | Basic} The authentication method to use: Negotiate (or 0), Basic (or 1) A Secure Sockets Layer (SSL) connection is required for Basic authentication. -Credential PSCredential The user account credentials to use to perform this task. The default credentials are those of the currently logged on user unless the cmdlet is run from an Active Directory PowerShell provider drive. If the cmdlet is run from such a provider drive, the account associated with the drive is the default. Type a user name, such as "User64" or "Domain64\User64" or specify a PSCredential object such as one generated by Get-Credential If a user name is specified, the cmdlet will prompt for a password. -Filter string A query string that retrieves Active Directory objects. This string uses the PowerShell Expression Language syntax: filter ::= "{" FilterComponentList"}" FilterComponentList ::= FilterComponent | FilterComponent JoinOperator FilterComponent | NotOperator FilterComponent FilterComponent ::= attr FilterOperator value | "(" FilterComponent")" FilterOperator ::= "-eq" | "-le" | "-ge" | "-ne" | "-lt" | "-gt"| "-approx" | "-bor" | "-band" | "-recursivematch" | "-like" | "-notlike" JoinOperator ::= "-and" | "-or" NotOperator ::= "-not" attr ::= PropertyName | LDAPDisplayName_of_the_attribute value::= <compare this value with an attr by using the specified FilterOperator> -Identity ADOrganizationalUnit An AD organizational unit object. Most often this will be a Distinguished Name (e.g. OU=demo,DC=SS64,DC=com) The identity may also be given as a GUID, Security Identifier or sAMAccountName. The cmdlet searches the default naming context or partition to find the object. If two or more objects are found, the cmdlet returns a non-terminating error. The ADGroup object may also be passed through the pipeline or set via a variable. -LDAPFilter string An LDAP query string that is used to filter AD objects. Use this parameter to run existing LDAP queries. See also Help about_ActiveDirectory_Filter. For example to search an OU for names beginning with "Teresa". -LDAPFilter "(name=Teresa*)" -SearchScope Subtree -SearchBase "DC=demo,DC=SS64,DC=com" -Partition string The distinguished name of an AD partition. string must be one of the naming contexts on the current directory server. The cmdlet searches this partition to find the object defined by the -Identity parameter. Examples: -Partition "CN=Configuration,DC=Europe,DC=Test,DC=SS64,DC=COM" -Partition "CN=Schema,CN=Configuration,DC=Europe,DC=Test,DC=SS64,DC=COM" In many cases, a default value will be used for -Partition if no value is specified. -Properties string[] The properties of the output object to retrieve from the server (comma-separated list). Use this parameter to retrieve properties that are not included in the default set. To discover the properties available, use Get-Member To display all of the attributes that are set on the object, specify * (asterisk). Specify the property Name or for non default/extended properties, the LDAP Display Name of the attribute. -ResultPageSize int The number of objects to include in each page for an AD Domain Services query. default = 256 -ResultSetSize Int32 The maximum number of objects to return for an AD Domain Services query. To receive all objects, set this to $null. Ctrl+c will stop the query and return of objects. default = $null. -SearchBase string An Active Directory path to search under. e.g. -SearchBase "ou=training,dc=demo,dc=ss64,dc=com" -SearchScope The scope of an AD search. Possible values for this parameter are: Base or 0 Search only the current path or object. OneLevel or 1 Search the immediate children Subtree or 2 Search the current path/object and all children -Server string The AD Domain Services instance to connect to, this may be a Fully qualified domain name, NetBIOS name, Fully qualified directory server name (with or without port number) CommonParameters: -Verbose, -Debug, -ErrorAction, -ErrorVariable, -WarningAction, -WarningVariable, -OutBuffer -OutVariable.
Get-ADOrganizationalUnit gets an OU object or performs a search to retrieve multiple OUs.
The -Identity parameter specifies the AD OU to retrieve. Identify an organizational unit by its distinguished name (DN) or GUID. Alternatively set the parameter to an organizational unit object
variable or pass an organizational unit object through the pipeline.
To search for and retrieve more than one organizational unit, use the -Filter or -LDAPFilter parameters. The Filter parameter uses the PowerShell Expression Language to write query strings for Active Directory. For more information about the Filter parameter syntax, see help about_ActiveDirectory_Filter. If you have existing LDAP query strings, you can use the LDAPFilter parameter.
This cmdlet retrieves a default set of organizational unit object properties. To retrieve additional properties use the -Properties parameter.
Examples
Get all the Organizational Units in the domain:
PS C:\> Get-ADOrganizationalUnit -Filter 'Name -like "*"' | FT Name, DistinguishedName -A
Gets the Organizational Unit with DistinguishedName 'OU=Sydney,OU=Demo,DC=SS64,DC=COM':
PS C:\> Get-ADOrganizationalUnit -Identity 'OU=Sydney,OU=Demo,DC=SS64,DC=COM' | FT Name,Country,PostalCode,City,StreetAddress,State -A
Gets OUs underneath the 'Sydney' Organizational Unit using an LDAP filter:
PS C:\> Get-ADOrganizationalUnit -LDAPFilter '(name=*)' -SearchBase 'OU=Sydney,OU=Demo,DC=SS64,DC=COM' -SearchScope OneLevel | FT Name,Country,PostalCode,City,StreetAddress,State
“Go where he will, the wise man is at home” ~ Ralph Waldo Emerson
Related PowerShell Cmdlets:
New-adOrganizationalUnit - Create a new AD OU.
Remove-adOrganizationalUnit - Remove an AD OU.
Set-adOrganizationalUnit - Modify an AD OU.