Problem wynika z faktu, że PowerShell domyślnie zapisuje przekierowane wyjście w formacie Unicode (UTF-16 LE). W rezultacie, gdy używasz operatora >>, plik jest kodowany w UTF-16, co powoduje pojawianie się dodatkowych znaków (np. null bytes) przy próbie odczytu go jako UTF-8 lub ASCII.
Aby temu zaradzić i uzyskać plik zakodowany w UTF-8, możesz użyć polecenia Out-File z opcją -Encoding UTF8, na przykład:
Kod: Zaznacz cały
perl .\makePassListUSOS.pl pass.txt org.csv | Out-File -Encoding UTF8 .\file.csv
Alternatywnie możesz użyć Set-Content:
Kod: Zaznacz cały
perl .\makePassListUSOS.pl pass.txt org.csv | Set-Content -Encoding UTF8 .\file.csv