public/Get-PrintQueue.ps1
function Get-PrintQueue { param( $QueueName, [System.Management.Automation.PSCredential] $Credential, [string] $Server ) $params = @{} if ($Server){ $params['Server'] = $Server } if ($Credential){ $params['Credential'] = $Credential } #Get Queue info from AD if ($QueueName){ $queueobjects = Get-AdObject -filter "objectCategory -eq 'printqueue'" -Prop * @params| Where-object {$_.printShareName -like $QueueName} } else { $queueobjects = Get-AdObject -filter "objectCategory -eq 'printqueue'" -Prop * @params } $returnobject = @() foreach ($queueobject in $queueobjects){ $object = [pscustomobject]@{ QueueName = $queueobject.PrintShareName ComputerName = $queueobject.serverName Driver = $queueobject.driverName Description = $queueobject.Description Created = $queueobject.Created PortName = $queueobject.portName } $returnobject += $object }#end foreach return $returnobject } |