1. Verifique se o formato de entrada tem a codificação correta (por exemplo, UTF-8 com BOM)
2.) Você pode tentar convertê-los:
function ConvertTo-Encoding ([string]$From, [string]$To){
Begin{
$encFrom = [System.Text.Encoding]::GetEncoding($from)
$encTo = [System.Text.Encoding]::GetEncoding($to)
}
Process{
$bytes = $encTo.GetBytes($_)
$bytes = [System.Text.Encoding]::Convert($encFrom, $encTo, $bytes)
$encTo.GetString($bytes)
}
}
[System.Text.Encoding]::Default.Codepage
$Title = "Liberação Tubarão" | ConvertTo-Encoding "UTF-8" "windows-1251"
Write-Host $Title
$Title = $Title.Replace(("Liberação" | ConvertTo-Encoding "UTF-8" "windows-1251"), "")
Write-Host $Title
3.) Você pode tentar definir a codificação para UTF8 no começo via (mais infos aqui ):
[Console]::OutputEncoding = [System.Text.Encoding]::UTF8
Powershell 3.0 e superior:
$PSDefaultParameterValues['*:Encoding'] = 'utf8'