【问题标题】:Trying to output ➜ on powershell prompt with cmder尝试使用cmder在powershell提示符下输出➜
【发布时间】:2017-06-05 01:29:33
【问题描述】:

我正在使用 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

【问题讨论】:

  • 您的 Microsoft.PowerShell_profile.ps1 是否以 UTF8 格式保存(这有关系吗?)
  • 根据VSCode保存在UTF8中。
  • UTF-8 带 BOM 还是不带 BOM?
  • 没有BOM

标签: powershell command-line cmder


【解决方案1】:

根据@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 
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-03-29
    • 1970-01-01
    • 1970-01-01
    • 2021-02-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多