🐕

【PowerShell 】文字エンコーディングの設定

2023/07/07に公開

PowerShell 7 のコンソールの文字エンコーディングの設定を書く必要があった。

[Console]::OutputEncoding = [Text.Encoding]::UTF8

もしくは次のようにも書ける。

[Console]::OutputEncoding = [Text.UTF8Encoding]::UTF8
[Console]::OutputEncoding = [Text.Encoding]::GetEncoding('utf-8')

コードを追加したプロファイルは $Profile (C:\Users\[user name]\OneDrive\ドキュメント\PowerShell\Microsoft.PowerShell_profile.ps1)。

PowerShell を再起動させて次のコマンドを実行して設定が反映されていることを確認する。

> [Console]::OutputEncoding

Preamble          :
BodyName          : utf-8
EncodingName      : Unicode (UTF-8)
HeaderName        : utf-8
WebName           : utf-8
WindowsCodePage   : 1200
IsBrowserDisplay  : True
IsBrowserSave     : True
IsMailNewsDisplay : True
IsMailNewsSave    : True
IsSingleByte      : False
EncoderFallback   : System.Text.EncoderReplacementFallback
DecoderFallback   : System.Text.DecoderReplacementFallback
IsReadOnly        : False
CodePage          : 65001

プロファイルが読み込まれるようにするには管理者権限であらかじめ次のコマンドを実行しておいた。

Set-ExecutionPolicy -ExecutionPolicy RemoteSigned

Discussion