Изменение выходной кодировки PowerShell по умолчанию на UTF-8

По умолчанию, когда вы перенаправляете вывод команды в файл или передаете его в что-то еще в PowerShell, кодировка будет UTF-16, что бесполезно. Я ищу, чтобы изменить его на UTF-8.

Это может быть сделано в каждом конкретном случае путем замены>foo.txt синтаксис с| out-file foo.txt -encoding utf8 но это неудобно повторять каждый раз.

Постоянный способ установить вещи в PowerShell - это поместить их в\Users\me\Documents\WindowsPowerShell\profile.ps1; Я проверил, что этот файл действительно выполняется при запуске.

Было сказано, что выходная кодировка может быть установлена ​​с$PSDefaultParameterValues = @{'Out-File:Encoding' = 'utf8'} но я пробовал это, и это не имело никакого эффекта.

https://blogs.msdn.microsoft.com/powershell/2006/12/11/outputencoding-to-the-rescue/ который говорит о$OutputEncoding На первый взгляд выглядит так, как будто это должно быть актуально, но затем говорится о том, что выходные данные кодируются в ASCII, а это не то, что происходит на самом деле.

Как настроить PowerShell на использование UTF-8?

Ответы на вопрос(1)

Ваш ответ на вопрос