PowerShellのプロンプト文字列を変更する方法

toc目次

はじめに

PowerShellのプロンプトはデフォルトで「PS [現在のディレクトリ] >」と出力されるため、
C:\aaa\bbb\ccc\ddd\eee\fff\ggg\hhh\iii\jjj」のような深い階層でPowerShellを起動するとコマンドが見えづらくなっていしまいます。

PS C:\aaa\bbb\ccc\ddd\eee\fff\ggg\hhh\iii\jjj>

PowerShellのプロンプト文字列を変更する

PowerShellのプロンプト文字列はPrompt関数の戻り値が設定されるため、Prompt関数を上書き実行することによりプロンプト文字列を変更できます。

PS C:\aaa\bbb\ccc\ddd\eee\fff\ggg\hhh\iii\jjj> function Prompt { "PS > " }
PS >

PowerShellの開始時からプロンプト文字列を変更する

PowerShellプロファイルにPrompt関数を登録することでPowerShellの開始時からプロンプト表記を変更することが可能です。

PowerShellプロファイルの詳細については以下を参照ください

PowerShellプロファイルの作成

Test-Pathでプロファイルが存在するか確認し、存在しない場合(Falseの場合)はNew-Itemでプロファイルを作成します。

PS > Test-Path $PROFILE
False
PS > New-Item -ItemType File -Path $PROFILE -Force

Test-Pathの結果がTrueの場合はすでにプロファイルが存在するため新たに作成する必要はありません。

PS > Test-Path $PROFILE
True

PowerShellプロファイルの編集

notepadコマンドでプロファイルを開きます。

PS > notepad $PROFILE

PowerShellプロファイル(Microsoft.PowerShell_profile.ps1)に以下を追記して保存します。

function Prompt { "PS > " }

PowerShellを再起動するとプロンプトの表記が変更されます。

PS >

現在のディレクトリも表示したい場合は、PowerShellプロファイルを以下のようにすると1行目に現在のディレクトリ、2行目にプロンプトの表示となります。

function Prompt { "[" + (Get-Location) + "]`r`n" + "PS > " }
[C:\aaa\bbb\ccc\ddd\eee\fff\ggg\hhh\iii\jjj]
PS >