PowerShellを使う際にデフォルトでUTF-8になるように設定
WindowsでPowerShellを使っていると、PowerShellのデフォルトの文字コードがShiftJISなので、 コマンドライン上での作業で何かしらと文字化けが発生しがち。
今回は、PowerShellを起動した時に、UTF-8で使えるように設定していく方法をまとめていく。
開発環境
- Windows11
- PowerShell 7.4.2
PowerShellでUTF-8を使うための設定
PowerShellでは以下のコマンドを実行することで、文字コードをUTF-8に切り替えることができる。
chcp 65001
つまり、PowerShell起動と同時に先ほどのコマンドを実行するように設定してあげればよい。
Windowsターミナルでの設定
設定 → プロファイル → PowerShell をクリックする。
右側にコマンドラインという項目があるので、以下の様に設定を変更する。
# 変更前
%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe
# 変更後
%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe -NoExit -Command "chcp 65001"
-NoExit
を追加することで、-Command "chcp 65001"
を実行した後でもPowerShellが起動し続けてくれる。
VSCodeでの設定
まずは検索窓に以下を入力して検索し、Edit settings.json
をクリックする。
terminal.integrated.profiles.windows
settings.json
を開くと、以下のような項目がある。
"PowerShell": {
"source": "PowerShell"
}
これを以下の様に変更する。
"PowerShell": {
"source": "PowerShell",
"args": [
"-NoExit",
"-Command",
"chcp 65001"
]
}
これでVSCodeでもPowerShell起動と同時にUTF-8に変更してくれる。