Windows Teminal 自定義標題
背景與痛點

場景:
開發(fā)環(huán)境,用命令行開了好幾個微服務,窗口標題都是一樣的,不好分清哪個窗口是哪個服務的了。所有窗口默認顯示相同的標題(如"C:\Windows\System32\cmd.exe dotnet run")。窗口多了,切換也不方便。
解決方案:
使用Windows Teminal 來運行命令啟動服務,然后自定義動態(tài)設置窗口標題為目錄名(完整路徑)格式。 例如:
YDT_Gateway(D:\Project\...\YDT_Gateway)
實現(xiàn)效果

實現(xiàn)步驟詳解
步驟 1:確認配置文件路徑
在 PowerShell 中運行以下命令查看配置文件路徑:
$PROFILE
你會看到類似這樣的路徑(具體路徑可能因系統(tǒng)而異):
C:\Users\你的用戶名\Documents\PowerShell\Microsoft.PowerShell_profile.ps1
步驟 2:創(chuàng)建配置目錄和文件
如果 Documents\PowerShell 目錄不存在,手動創(chuàng)建:
New-Item -Type Directory -Path (Split-Path $PROFILE -Parent) -Force
創(chuàng)建配置文件:
New-Item -Type File -Path $PROFILE -Force
2. 添加自動更新標題的代碼
步驟 1:用記事本打開配置文件
notepad $PROFILE
或使用其他編輯器(如 VS Code):
code $PROFILE
步驟 2:粘貼以下代碼
function prompt {
# 獲取當前完整路徑(字符串格式)
$currentPath = (Get-Location).Path
# 提取最后一級目錄名(兼容根目錄)
$folderName = if ($currentPath -match '\\$') {
# 處理根目錄(如 D:\)
(Split-Path $currentPath -Parent) | Split-Path -Leaf
} else {
Split-Path $currentPath -Leaf
}
# 設置標題格式:最后一級目錄名(完整路徑)
$host.UI.RawUI.WindowTitle = "$folderName($currentPath)"
# 保留默認提示符(此行不可刪除)
"PS $($executionContext.SessionState.Path.CurrentLocation)$('>' * ($nestedPromptLevel + 1)) "
}

浙公網(wǎng)安備 33010602011771號