windows power shellで困まる

vue3を試してみようと、windows10 home editionでvue cliをインストールした際にwindows power shellで困ったので解決方法をまとめておきます。

windows power shellにアクセスして

npm install -g @vue/cli

でvue cliをインストールしました。ここまでは問題なかったのですが、

vue --version

としてバージョンを確認してみると

PS C:\Users\nkd> vue --version
vue : 用語 'vue' は、コマンドレット、関数、スクリプト ファイル、または操作可能なプログラムの名前として認識されません。
名前が正しく記述されていることを確認し、パスが含まれている場合はそのパスが正しいことを確認してから、再試行してください。
発生場所 行:1 文字:1
+ vue --version
+ ~~~
+ CategoryInfo : ObjectNotFound: (vue:String) [], CommandNotFoundException
+ FullyQualifiedErrorId : CommandNotFoundException

といったエラーがでます。
パスが正しくないということなので、Windowsの設定で、「環境変数を編集」を開き、Pathを確認してみると、確かにvueのパスが設定されていないので、パスにvueがインストールされたパス「C:\Program Files (x86)\Nodist\bin」を新規に追加します。

windows power shellを起動し直して、再度、

vue --version

として確認すると、今度は以下のようなエラーが出ました。

PS C:\Users\nkd> vue --version
vue : このシステムではスクリプトの実行が無効になっているため、ファイル C:\Program Files (x86)\Nodist\bin\vue.ps1 を読み
込むことができません。詳細については、「about_Execution_Policies」(https://go.microsoft.com/fwlink/?LinkID=135170) を参
照してください。
発生場所 行:1 文字:1
+ vue --version
+ ~~~
+ CategoryInfo : セキュリティ エラー: (: ) []、PSSecurityException
+ FullyQualifiedErrorId : UnauthorizedAccess

どうも実行権限がないというようなエラーのようです。about_Execution_Policiesなどで調べ、このページを見つけました。このページにあるように権限を確認してみると以下のように表示され、確かに制限がかかっているようです。

PS C:\Users\nkd> Get-ExecutionPolicy
Restricted

 

設定を変更するには、windows power shellを「管理者として実行する」から起動します。

起動後、

Set-ExecutionPolicy RemoteSigned

と入力すると、処理を聞かれるので「Y」を押すと設定が完了します。

PS C:\WINDOWS\system32> Set-ExecutionPolicy RemoteSigned

実行ポリシーの変更
実行ポリシーは、信頼されていないスクリプトからの保護に役立ちます。実行ポリシーを変更すると、about_Execution_Policies
のヘルプ トピック (https://go.microsoft.com/fwlink/?LinkID=135170)
で説明されているセキュリティ上の危険にさらされる可能性があります。実行ポリシーを変更しますか?
[Y] はい(Y) [A] すべて続行(A) [N] いいえ(N) [L] すべて無視(L) [S] 中断(S) [?] ヘルプ (既定値は "N"): Y

windows power shellを起動し直して、

vue --version

とすると

PS C:\Users\nkd> vue --version
@vue/cli 4.5.6

のように表示され、問題は解決しました。
同じ問題にハマって困っている方の助けになれば幸いです。