powershell

PowerShell プロンプト表示を変更する

プロファイルへの記載で変更可能

PowerShellのデフォルトのプロンプトはカレントフォルダとなっています。これだと、フォルダの深いところで作業する際不便なので、今回は現在いるフォルダ名のみの表示に切り替えます。powershellにもbashの.bash_profileに相当するものがあります。ここにpowershellを起動したタイミングでプロンプトへ出力するコマンドを書いてしまえばよいわけです。

プロファイルの所在確認

プロファイルの所在は$profileで確認できますが、おそらくデフォルトでは設定されているファイルが存在しないと思います。(少なくとも私の環境では存在しませんでした)この$profileは、Powershellのバージョンによっても異なるようです。

$profile
以下は当方が持っている以下二つの環境で確認してみました。

-- PSVersion 7.3.1
--
PS C:\Windows\System32> $profile
C:\Users\sooni\Documents\PowerShell\Microsoft.PowerShell_profile.ps1
PS D:\ldrtest>

-- PSVersion 5.1.19041.2364
-- 
PS C:\Windows\System32> $profile
C:\Users\sooni\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1
プロファイルの作成
if (!(Test-Path -Path $PROFILE)) {
  New-Item -ItemType File -Path $PROFILE -Force
}
プロファイルへ記載する内容
function prompt() {
  (Split-Path (Get-Location) -Leaf) + " >> "
}
PowerShell 5.1においてのプロファイル作成例
PS C:\Windows\System32> $profile
C:\Users\sooni\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1
PS C:\WINDOWS\system32> ls C:\Users\sooni\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1
ls : パス 'C:\Users\sooni\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1' が存在しないため検出できませ
ん。
発生場所 行:1 文字:1
+ ls C:\Users\sooni\Documents\WindowsPowerShell\Microsoft.PowerShell_ ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : ObjectNotFound: (C:\Users\sooni...ell_profile.ps1:String) [Get-ChildItem], ItemNotFound
   Exception
    + FullyQualifiedErrorId : PathNotFound,Microsoft.PowerShell.Commands.GetChildItemCommand

PS C:\WINDOWS\system32> if (!(Test-Path -Path $PROFILE)) {
>>   New-Item -ItemType File -Path $PROFILE -Force
>> }


    ディレクトリ: C:\Users\sooni\Documents\WindowsPowerShell


Mode                 LastWriteTime         Length Name
----                 -------------         ------ ----
-a----        2023/01/19     23:48              0 Microsoft.PowerShell_profile.ps1


PS C:\WINDOWS\system32>
PS C:\WINDOWS\system32> notepad C:\Users\sooni\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1
## ここで上記「プロファイルへ記載する内容」の通り追記する

## 以下の通りドットソースする事でプロファイルへ記載した内容を実行してくれます
##
PS C:\WINDOWS\system32> . $profile
system32 >>
スポンサーリンク
コピペで使う