PowerShell Skript Unlesbarer Text

Zeichenkodierungsproblem beim Ausführen von PowerShell-Skripten

Beim Arbeiten mit PowerShell stellte ich fest, dass das direkte Echo von Japanisch in der Konsole keinen unlesbaren Text verursacht, aber das Ausführen eines Skripts, das Japanisch enthält, zu unlesbarer Ausgabe führt. Dieser Artikel stellt vor, wie man mit Zeichenkodierungsproblemen beim Ausführen von PowerShell-Skripten umgeht.

Shou Arisaka
1 Min. Lesezeit
30. Sept. 2025

Beim Arbeiten mit PowerShell stellte ich fest, dass das direkte Echo von Japanisch in der Konsole keinen unlesbaren Text verursacht, aber das Ausführen eines Skripts, das Japanisch enthält, zu unlesbarer Ausgabe führt. Dieser Artikel stellt vor, wie man mit Zeichenkodierungsproblemen beim Ausführen von PowerShell-Skripten umgeht.

# test.ps1
echo あ
PS C:\pg\selenium> echo あ

PS C:\pg\selenium> . test.ps1
縺・
PS C:\pg\selenium> . test.ps1

Lösung: BOM hinzufügen

nkf --overwrite --oc=UTF-8-BOM test.ps1

utf 8 - UTF8 Script in PowerShell outputs incorrect characters - Stack Overflow

Wenn unlesbarer Text wie oben auftritt, wird das Hinzufügen von BOM mit nkf es lösen. nkf ist ein Befehl, der die Zeichenkodierung konvertiert. Wenn Sie nkf verwenden, können Sie BOM hinzufügen, indem Sie die Option --oc=UTF-8-BOM hinzufügen.

Beachten Sie, dass die Zeichenkodierung zwischen utf-8 und utf-8-bom unterschiedlich ist. utf-8-bom ist utf-8 mit hinzugefügtem BOM. BOM wird verwendet, um die Zeichenkodierung zu identifizieren. Durch Hinzufügen von BOM können Sie die Zeichenkodierung identifizieren, was unlesbaren Text verhindern kann.

Diesen Artikel teilen

Shou Arisaka 30. Sept. 2025

🔗 Links kopieren