尝试使用 cmder 在 powershell 提示符下输出 ➜

Trying to output ➜ on powershell prompt with cmder

我正在使用 cmder 控制台和 powershell 并创建自定义提示。所以我创建了一个看起来像这样的任务:

*PowerShell -ExecutionPolicy Bypass -NoLogo -NoExit -new_console:d:"%USERPROFILE%"

现在在 Microsoft.PowerShell_profile.ps1 我创建了一个如下所示的提示:

[Console]::OutputEncoding = [System.Text.Encoding]::UTF8

function prompt
{
    Write-Host "➜"  -nonewline -foregroundcolor Magenta 
}

现在提示输出:

âžœPS>

所以我的 输出不正确。所以我复制

âžœPS>function prompt { Write-Host "➜"  -nonewline -foregroundcolor Magenta }

并将其直接粘贴到 cmder 提示符中,现在提示符输出

➜PS>

这是应该的。将 cmder 放入 Microsoft.PowerShell_profile.ps1 时,如何让 cmder 在命令提示符下输出 UTF8

根据@PetSerAl 的回复,我确实需要将文件另存为 UTF8 with BOM

我还可以从我的 Microsoft.PowerShell_profile.ps1 中删除 Console]::OutputEncoding = [System.Text.Encoding]::UTF8。 现在我的 Microsoft.PowerShell_profile.ps1 看起来像:

function prompt
{
    Write-Host "➜"  -nonewline -foregroundcolor Magenta 
}