TeamCity 记录 UTF8 - Powershell 脚本

fip*_*n88 0 powershell teamcity encoding readfile

我创建了 powershell 脚本以在 TeamCity 上的一个步骤中读取文件。如果我在 Powershell 应用程序中读取文件并放置下一个脚本,它可以正常工作,但是当在运行程序类型“PowerShell”的步骤中执行该文件时,编码不起作用并且某些字符没有编码(例如“áãéí”等,等等)

$userDocuments = [environment]::getfolderpath("mydocuments")
$file= "myfile.txt"
$fullPath = Join-Path $userDocuments -ChildPath $file
Get-Content -Encoding UTF8 $fullPath
Run Code Online (Sandbox Code Playgroud)

有人帮我好吗?

提前致谢

Nic*_*ick 5

需要进行一些配置更改才能告诉 TeamCity 将输出处理为 UTF-8 您可以在“处理输出”标题下阅读此处

要正确处理来自 PowerShell 的非 ASCII 输出,必须在 PowerShell 端和 TeamCity 端都设置正确的编码。

要将 PowerShell 的输出编码设置为 UTF-8,请将以下行添加到 PowerShell 脚本的开头: [Console]::OutputEncoding = [System.Text.Encoding]::UTF8

要在 TeamCity 代理端设置编码,请设置 java 启动选项-Dfile.encoding=UTF-8,或将构建配置参数teamcity.runner.commandline.stdstreams.encoding值设置为UTF-8