Public/Get-Repository.ps1
|
function Get-Repository { <# .SYNOPSIS Lists saved repository aliases. .DESCRIPTION Displays all repository aliases and their associated paths. Optionally filters by a wildcard pattern. .PARAMETER Filter Wildcard pattern to filter alias names (e.g. 'my*'). .EXAMPLE Get-Repository .EXAMPLE Get-Repository -Filter 'api*' .EXAMPLE repo list #> [CmdletBinding()] param( [Parameter(Position = 0)] [string] $Filter = '*' ) $store = Get-RepoStore if ($store.Count -eq 0) { Write-Host 'No repositories saved. Use ' -ForegroundColor Yellow -NoNewline Write-Host 'repo save <alias>' -ForegroundColor Cyan -NoNewline Write-Host ' to add one.' -ForegroundColor Yellow return } $store.GetEnumerator() | Where-Object { $_.Key -like $Filter } | Sort-Object Key | Select-Object @{ Name = 'Alias'; Expression = { $_.Key } }, @{ Name = 'Path'; Expression = { $_.Value } } } |