chelnak
6/24/2019 - 9:10 PM

Custom prompt for PowerShell that displays your current Az subscription in the tile bar

Custom prompt for PowerShell that displays your current Az subscription in the tile bar

function Prompt {

    $CurrentTitle = $Host.UI.RawUI.WindowTitle
    $Host.UI.RawUI.WindowTitle =  "Loading Az ..."

    Set-Location -Path $ENV:USERPROFILE/code -ErrorAction stop

    $IsElevated = ([Security.Principal.WindowsPrincipal][Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole] "Administrator")
    if ($IsElevated) {
        Write-Host "$([char]9788) " -ForegroundColor Red -NoNewline
    }else {
        Write-Host "$([char]9788) " -ForegroundColor Yellow -NoNewline
    }
    Write-Host 'Craig ' -ForegroundColor Green -NoNewline
    Write-Host "[$((Get-Location).path)]" -NoNewline
    Write-Host
    Write-Output '# ' 

    $SubScriptionName = (Get-AzContext).Subscription.Name

    if ($SubScriptionName) {
        $WindowTitle = "PowerShell | Az - [$($SubscriptionName)]"
    } else {
        $WindowTitle = $CurrentTitle
    }

    $Host.UI.RawUI.WindowTitle =  $WindowTitle
 }