gpt4 book ai didi

powershell - PowerShell 中的 UTF8 脚本输出不正确的字符

转载 作者:行者123 更新时间:2023-12-03 09:15:16 29 4
gpt4 key购买 nike

我已经使用非 ascii 字符为 PowerShell 创建了一个 UTF8 脚本。

字符.ps1:

Write-Host "ç â ã á à"

当脚本在 PowerShell 控制台中运行时,它输出错误的字符。

enter image description here

但是,如果我直接在控制台中写入字符,它们会按预期显示:

enter image description here

有谁知道是什么导致了这种行为?

问题来自我编写的脚本,该脚本具有包含非 ascii 字符的硬编码路径。当我尝试将路径作为参数传递给 cmdlet 时(在我要 robocopy 文件夹的情况下),命令失败,因为它找不到路径(在屏幕中错误输出)。

最佳答案

使用 BOM 将脚本的编码更改为 UTF-8 解决了该问题。

我使用带有 EncodingHelper 插件的 SublimeText 来控制脚本的字符集。它已正确设置为 UTF8。

我将 SublimeText 中脚本的编码更改为“带有 BOM 的 UTF-8”,并且输出显示正确。

我使用 Notepad++ 创建了相同的脚本,默认为“带有 BOM 的 UTF-8”,并且该字符串在控制台中正确显示。

我将 Notepad++ 中脚本的编码更改为“无 BOM 的 UTF-8”,但显示不正确。

PowerShell 似乎无法正确猜测没有 BOM 的 UTF-8 文件的编码。

关于powershell - PowerShell 中的 UTF8 脚本输出不正确的字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14482253/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com