# Get-BluGenieADGroupMembers

﻿Get-BluGenieADGroupMembers

### SYNOPSIS <a href="#synopsis" id="synopsis"></a>

Query Active Directory via LDAP without the need for RSAT to be installed.

### SYNTAX <a href="#syntax" id="syntax"></a>

```
Get-BluGenieADGroupMembers [[-GroupName] <String>] [[-Domain] <String>] [-FullDetails] [-UseCache] [[-CachePath] <String>] [-Walkthrough] [-ReturnObject] [-OutUnEscapedJSON] [-OutYaml] [[-FormatView] 
<String>] [<CommonParameters>]
```

### DESCRIPTION <a href="#description" id="description"></a>

Query Active Directory via LDAP without the need for RSAT to be installed.

### EXAMPLES <a href="#examples" id="examples"></a>

#### EXAMPLE 1 <a href="#example-1" id="example-1"></a>

```
Command: $ConsoleSystems = Get-BGADGroupMembers -GroupName S_Wrk_Posh3PlusLabSystems -ReturnObject
```

```
Description: Use this command to Query an AD Group and assign them to the BluGenie Console Systems variable
Notes:
```

#### EXAMPLE 2 <a href="#example-2" id="example-2"></a>

```
Command: Get-BGADGroupMembers -GroupName S_Wrk_Posh3PlusLabSystems -ReturnObject
```

```
Description: Use the command to display a list of computers from an AD Group
Notes:
```

#### EXAMPLE 3 <a href="#example-3" id="example-3"></a>

```
Command: ADGM -GroupName S_Wrk_Posh3PlusLabSystems -UseCache
```

```
Description: Use this Short-Hand Alias to create a text file with a list of computers from an AD Group
Notes:
```

#### EXAMPLE 4 <a href="#example-4" id="example-4"></a>

```
Command: Get-BGADGroupMembers -GroupName S_Wrk_Posh3PlusLabSystems -UseCache -FullDetails
```

```
Description: Use this command to create a csv file with a list of computers and their AD properties (Name,SAMAccountname,DisplayName,Description,Path)
Notes:
```

#### EXAMPLE 5 <a href="#example-5" id="example-5"></a>

```
Command: Get-BGADGroupMembers -GroupName S_Wrk_Posh3PlusLabSystems -OutYaml -Verbose
```

```
Description: Use this command to view a full detailed yaml report on the members of the AD Group and function details
Notes:
```

#### EXAMPLE 6 <a href="#example-6" id="example-6"></a>

```
Command: Get-BGADGroupMembers -GroupName S_Wrk_Posh3PlusLabSystems -UseCache -CachePath .\Collections\S_Wrk_Posh3PlusLabSystems.txt
```

```
Description: Use this command to save the AD Group members to a specific text file.
Notes: By default the Cache location is %temp% with a BGSys_<GUID>.txt file name.
```

#### EXAMPLE 7 <a href="#example-7" id="example-7"></a>

```
Command: Get-BluGenieADGroupMembers -Help
```

```
Description: Call Help Information
Notes: If Help / WalkThrough is setup as a parameter, this script will be called to setup the Dynamic Help Menu if not the normal Get-Help will be called with the -Full parameter
```

#### EXAMPLE 8 <a href="#example-8" id="example-8"></a>

```
Command: Get-BluGenieADGroupMembers -WalkThrough
```

```
Description: Call Help Information [2]
Notes: If Help / WalkThrough is setup as a parameter, this script will be called to setup the Dynamic Help Menu if not the normal Get-Help will be called with the -Full parameter
```

#### EXAMPLE 9 <a href="#example-9" id="example-9"></a>

```
Command: Get-BGADGroupMembers -OutUnEscapedJSON
```

```
Description: Return a detailed function report in an UnEscaped JSON format
Notes:  The OutUnEscapedJSON is used to Beautify the JSON return and not Escape any Characters.  Normal return data is a Hash Table.
```

#### EXAMPLE 10 <a href="#example-10" id="example-10"></a>

```
Command: Get-BGADGroupMembers -OutYaml
```

```
Description: Return a detailed function report in YAML format
Notes:  The OutUnEscapedJSON is used to Beautify the JSON return and not Escape any Characters.  Normal return data is a Hash Table.
```

#### EXAMPLE 11 <a href="#example-11" id="example-11"></a>

```
Command: Get-BGADGroupMembers -ReturnObject
```

```
Description: Return Output as a Object
Notes:  The ReturnObject is used to return a PowerShell Object.  Normal return data is a Hash Table.
       This parameter is also used with the FormatView
```

#### EXAMPLE 12 <a href="#example-12" id="example-12"></a>

```
Command: Get-BluGenieADGroupMembers -ReturnObject -FormatView Yaml
```

```
Description: Output PSObject information in Yaml format
Notes:  Current formats supported by default are ('Table','Custom','CustomModified','None','JSON','OutUnEscapedJSON','CSV', 'Yaml')
       Default is set to (None) and normal PSObject.
```

### PARAMETERS <a href="#parameters" id="parameters"></a>

#### GroupName <a href="#groupname" id="groupname"></a>

```
-GroupName <String>
   Description: The name of the Group you are going to do a member lookup on
   Notes: This is Mandatory.  If this option is left blank the return is Null
   Alias: GN
   ValidateSet:
   
   Required?                    false
   Position?                    1
   Default value                
   Accept pipeline input?       false
   Accept wildcard characters?  false
```

#### Domain <a href="#domain" id="domain"></a>

```
-Domain <String>
   Description: The name of the Domain in which you are looking for the Group and Member information
   Notes: The default domain name is pulled from the Registry.  If this option is not set or the domain
   name is not found in the registry the return is Null
   Alias: DO
   ValidateSet:
   
   Required?                    false
   Position?                    2
   Default value                $(Get-ItemProperty -Path 'HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Group Policy\History' -Name 'MachineDomain' -ErrorAction SilentlyContinue | Select-Object 
   -ExpandProperty 'MachineDomain')
   Accept pipeline input?       false
   Accept wildcard characters?  false
```

#### FullDetails <a href="#fulldetails" id="fulldetails"></a>

```
-FullDetails [<SwitchParameter>]
   Description: Return a PSObject with the following values (Name, SAMAccountname, DisplayName, Description and the Path)
   Notes: The default return is a list of Names (ONLY)
   Alias: FD
   ValidateSet:
   
   Required?                    false
   Position?                    named
   Default value                False
   Accept pipeline input?       false
   Accept wildcard characters?  false
```

#### UseCache <a href="#usecache" id="usecache"></a>

```
-UseCache [<SwitchParameter>]
   Description: Cache found objects to disk
   Notes: By default the Cache location is %SystemDrive%\Windows\Temp
   Alias: UC
   ValidateSet:
   
   Required?                    false
   Position?                    named
   Default value                False
   Accept pipeline input?       false
   Accept wildcard characters?  false
```

#### CachePath <a href="#cachepath" id="cachepath"></a>

```
-CachePath <String>
   Description: Path to store the Cache information
   Notes: By default the Cache location is %temp% with a BGSys_<GUID>.txt file name.
               Example: C:\Users\ADMINI~1\AppData\Local\Temp\BGSys_46964-41870-29555-35418-93311.txt
   Alias: CP
   ValidateSet:
   
   Required?                    false
   Position?                    3
   Default value                $('{0}\BGSys_{1}.txt' -f $env:temp, $(New-BluGenieUID))
   Accept pipeline input?       false
   Accept wildcard characters?  false
```

#### Walkthrough <a href="#walkthrough" id="walkthrough"></a>

```
-Walkthrough [<SwitchParameter>]
   Description:  Start the dynamic help menu system to help walk through the current command and all of the parameters
   Notes:
   Alias: Help
   ValidateSet:
   
   Required?                    false
   Position?                    named
   Default value                False
   Accept pipeline input?       false
   Accept wildcard characters?  false
```

#### ReturnObject <a href="#returnobject" id="returnobject"></a>

```
-ReturnObject [<SwitchParameter>]
   Description: Return information as an Object
   Notes: By default the data is returned as a Hash Table
   Alias:
   ValidateSet:
   
   Required?                    false
   Position?                    named
   Default value                False
   Accept pipeline input?       false
   Accept wildcard characters?  false
```

#### OutUnEscapedJSON <a href="#outunescapedjson" id="outunescapedjson"></a>

```
-OutUnEscapedJSON [<SwitchParameter>]
   Description: Remove UnEsacped Char from the JSON information.
   Notes: This will beautify json and clean up the formatting.
   Alias:
   ValidateSet:
   
   Required?                    false
   Position?                    named
   Default value                False
   Accept pipeline input?       false
   Accept wildcard characters?  false
```

#### OutYaml <a href="#outyaml" id="outyaml"></a>

```
-OutYaml [<SwitchParameter>]
   Description: Return detailed information in Yaml Format
   Notes: Only supported in Posh 3.0 and above
   Alias:
   ValidateSet:
   
   Required?                    false
   Position?                    named
   Default value                False
   Accept pipeline input?       false
   Accept wildcard characters?  false
```

#### FormatView <a href="#formatview" id="formatview"></a>

```
-FormatView <String>
   Description: Automatically format the Return Object
   Notes: Yaml is only supported in Posh 3.0 and above
   Alias:
   ValidateSet: 'Table','Custom','CustomModified','None','JSON','OutUnEscapedJSON','CSV', 'Yaml'
   
   Required?                    false
   Position?                    4
   Default value                None
   Accept pipeline input?       false
   Accept wildcard characters?  false
```

#### CommonParameters <a href="#commonparameters" id="commonparameters"></a>

This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about\_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216).
