VSCodeでPowerShellの$profileを有効にする
create: 2019-6-5
PowerShell VSCode

Windows 使うなら PowerShell 使え。
PowerShell6.x をインストールした後にやるべきこと。

VSCode で$profile が有効にならない

PowerShell を利用する場合、エイリアスやショートカット関数を $profile で参照できるパスに記述するのですが、PowerShell を直接起動したときと VSCode のターミナルから利用したときでパスが違うので困った話。

VSCode のターミナルからみるプロファイル

C:\Users\ユーザID\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1

PowerShell をフツーに叩くとみるプロファイル

C:\Users\ユーザID\Documents\PowerShell\Microsoft.PowerShell_profile.ps1

VSCode ではドキュメントの直下の WindowsPowerShell を参照していますが、デフォルトではこのディレクトリは存在しません。

PowerShell を参照するリンク(ジャンクション)を作成する

ないものは作成すればいいのですが、直接作成するとプロファイルが 2 つになってしまいます。
そのため、コマンドラインでジャンクション(シンボリックリンクみたいなもの)を作成することで管理は 1 つにします。

(powershellではなく)cmd.exe を起動して

cd Documents
mklink WindowsPowerShell PowerShell /J

で OK です。
引数はリンク名とターゲットです。存在しない方(今から作りたい方)を先に書きます。

mklinkについては「Windowsでシンボリックリンクを実現する」で別記事にしました。

これで VSCode から $profile を参照することができました!