У меня есть Perl-скрипт, который производит вывод utf8. Я пытался использовать Set-Content для записи файла utf8, как это было предложено Powershell, отвергающим Perl binmode? ,
perl -S testbinmode.pl | Set-Content "binmode.txt" -Encoding Byte
выдает ошибку
Msgstr "Set-Content: Невозможно продолжить кодирование байтов. При использовании байт-кодирования содержимое должно быть байтового типа. "
perl -S testbinmode.pl | Set-Content "binmode.txt" -Encoding UTF8
не выдает сообщение об ошибке, но также не записывает правильный файл utf8.
Выходные данные сценария Perl правильно отображаются в окне Powershell. Как правильно записать этот вывод в файл с кодировкой utf8?
Благодарю.
Обновление: я видел много ответов на эту и аналогичные проблемы, здесь по ссылке, указанной выше, и по адресу https://stackoverflow.com/questions/40098771/changing-powershells-default-output-encoding-to-utf-8. Ни один из них, похоже, не работает, что наводит меня на мысль, что ни один из них на самом деле не был проверен. Требуется протестированный метод для перенаправления вывода текста UTF8 из программы CLI в файл. Благодарю.
Вот сценарий тестирования Perl:
use strict;
use warnings;
use utf8;
binmode(STDOUT, ":utf8");
print("The Crüxshadows");