试图在PowerShell提示符下输出➜与cmder

问题描述:

我使用cmder控制台powershell和创建自定义提示。所以我CREAE看起来像这样一个任务:试图在PowerShell提示符下输出➜与cmder

*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输出UTF8投入Microsoft.PowerShell_profile.ps1的时候吗?

+0

保存在您的UTF8'Microsoft.PowerShell_profile.ps1' – TessellatingHeckler

+0

据'VSCode'它保存在'UTF8'(和关系?)。 –

+2

带有BOM或无BOM的UTF-8? – PetSerAl

基于@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 
}