在长路径子目录中工作时,提示符占窗口宽度的 90%。我可以用下面的命令更改提示符:
# Save to: %userprofile%\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1
function prompt
{
Write-Host ("PS>") -nonewline -foregroundcolor Green -backgroundcolor Black
return " "
}
但是,我想要的是当我改变目录时改变窗口的标题。
是否存在我可以挂钩的事件,以便当我键入时cd c:\temp
标题变为c:\temp
,并且我的 PS 提示仍然存在PS>
?
答案1
Prompt
每次打印新提示时都会调用该函数。它的返回值是 PowerShell 将显示为提示的字符串,但您也可以在其中执行其他操作。如果您将其保存为您的配置文件,您将获得所需的内容:
Function Prompt {
$host.UI.RawUI.WindowTitle = Get-Location
"PS> "
}
(来源:这篇 Microsoft 博客文章.)它将窗口标题设置为当前位置,然后返回常量字符串PS>
。