Search This Blog

ps1 内に日本語での処理を記述しなくてはならない場合、UTF8 BOM で保存すると上手くいくようだ

filename: function.ps1 内の処理に日本語置換の処理を以下の様に記述していたのだけれども上手くいかないことがあった。どうやら .ps1 を UTF8 BOM でSave すると上手くいくようだ。
"日本語" -replace "語",""

UTF8 で保存した ps1 だと、Console で文字化けた状態で表示されてしまっていた。

ps1 内に日本語での処理を記述する場合は、UTF8 BOM で保存することが必要らしい。
PS>$f| %{Format-Hex $_}   #-Path <string[]> だとErrorになることの回避策。


           Path: D:\000.txt

           00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F

00000000   EF BB BF                                         


           Path: D:\001.txt

           00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F

00000000   EF BB BF                                         


PS>