Из группы файлов я хочу объединить все файлы, имя которых начинается с 1, в текстовый файл с именем 1.txt. Кодировка исходных файлов - UTF16-LE, и она также должна быть кодировкой целевого файла. Но использование моего сценария PowerShell (код ниже) приводит к созданию файла UTF-8 со специальными знаками дефекта (умляуты и т. Д.).
Это мой код:
Powershell.exe cat Disc:\data\files\1\filename-1* > Path:\here\1.txt
Я нашел несколько подходов с использованием Get-Content и Out-File, но не смог адаптировать эти команды к моим потребностям с подстановочными знаками. Насколько я понимаю, cat - это стандартный псевдоним get-content, поэтому мне интересно, почему я не могу просто заменить cat на get-content. Кроме того, get-content имеет параметр -Encoding CharSet, но меняет мой код следующим образом:
Powershell.exe cat Disc:\data\files\1\filename-1* > Path:\here\1.txt -encode Unicode
(который является кодировкой для порядка байтов с прямым порядком байтов в формате UTF-16) ничего не меняет. Ни BigEndianUnicode, ни UTF8.
Спасибо за любую помощь!