プロンプトの変更

http://www.leeholmes.com/blog/default,date,2005-06-12.aspx
を参考に、プロンプトを変更してみた。

一目瞭然だと思うが、無理やり説明すると。
カレントディレクトリだけの名前を取得するのにswitch文で正規表現を使った。
ドライブ直下の時はそれだとうまく行かないので、その時はdefaultで対処。
文字列のフォーマッティングはStringのFormat関数を使った。

MSH>function prompt {
>> switch -regex ((get-location).path) {
>> "(?<current>[^\\]+$)" {
>> $c = $matches.current
>> }
>> default {
>> $c = $_
>> }
>> }
>> [String]::Format("[{0}] {1} >", $c, (get-history -count 1).id)
>> }
>>
[C:\] 0 >cd windows
[WINDOWS] 1 >cd system32
[system32] 2 >