Functions/Get-ModuleHelp.ps1
function Get-ModuleHelp { <# .Synopsis Get help information for a specific module or a list of imported and available modules .DESCRIPTION .PARAMETER Name Mudule name. .PARAMETER CommandName Name of command in modules .NOTES Author: Jack Olsson #> [CmdletBinding()] param( [string]$Name, [string]$CommandName, [switch]$Detail ) If ([string]::IsNullOrEmpty($Name)) { "`nAvailable modules" "-----------------" #List installed Modules Get-InstalledModule | Select-Object Name, Version, Description #Get current active modules "`nImported modules" "----------------" Get-Module | Select-Object Name, Version, ModuleType } else { Get-Module | Where-Object {$_.Name -like "*$name*"} | ForEach-Object { $module = $_ "`n" + $module.Name "".PadRight(($module.Name).Length,'=') If ($module.ExportedWorkflows.Count -gt 0) { "`nWorkflows" "----------" ($module.ExportedWorkflows).Values } If ($module.ExportedDscResources.Count -gt 0) { "`nDsc Resources" "--------------" $module.ExportedDscResources } If ($module.ExportedVariables.Count -gt 0) { "`nVariables" "----------" $module.ExportedVariables } If ($module.ExportedTypeFiles.Count -gt 0) { "`nType Files" "-----------" $module.ExportedTypeFiles } If ($module.ExportedFormatFiles.Count -gt 0) { "`nFormat files" "-------------" $module.ExportedFormatFiles } If ($module.ExportedCommands.Count -gt 0) { "`nCommands" "--------" ($module.ExportedCommands).Values |Select-Object Name,CommandType,Version } If ($module.ExportedAliases.Count -gt 0) { "`nAliases" "-------" $aliases = $module.ExportedAliases $aliases.Keys | ForEach-Object { $aliases[$_].Name + " -> " + $aliases[$_].Definition } } } } } |