Open3
PowerShellエラー:running scripts is disabled on this system

pyenv-winをインストールする時に出たエラーです。
PowerShellスクリプト(ps1ファイル)を実行するとこのエラーが出ました。

以下はPerplexityからの回答です。
PowerShellスクリプト(ps1ファイル)を実行しようとした際に「running scripts is disabled on this system」というエラーが表示される主な理由は、PowerShellの「実行ポリシー(Execution Policy)」がスクリプトの実行を禁止する設定になっているためです。
Windowsの初期設定では、PowerShellの実行ポリシーが「Restricted」になっており、この状態ではすべてのスクリプトの実行が禁止されています。コマンドやインタラクティブな操作は可能ですが、ps1ファイルなどのスクリプトファイルの実行は許可されません。
このセキュリティ機能は、悪意のあるスクリプトの実行を防止するために設けられています。
実行ポリシーの種類(抜粋)
実行ポリシー | 説明 |
---|---|
Restricted | すべてのスクリプトの実行を禁止(デフォルト設定) |
AllSigned | 署名されたスクリプトのみ実行可能 |
RemoteSigned | ローカル作成はOK、ダウンロードは署名必須 |
Unrestricted | すべてのスクリプトを実行可能(警告あり) |
Bypass | すべてのスクリプトを警告なしで実行可能 |
解決方法
スクリプトを実行したい場合は、実行ポリシーを変更する必要があります。たとえば、現在のセッションだけ一時的に許可したい場合は以下のコマンドを使用します。
Set-ExecutionPolicy RemoteSigned -Scope Process -Force
このコマンドは、現在のPowerShellセッションのみ(-Scope Process
)スクリプトの実行を許可します。Process
はCurrentUser
かLocalMachine
に変えられます。

現在の実行ポリシーはGet-ExecutionPolicy
で確認できます。
PS> Get-ExecutionPolicy
RemoteSigned
PS>
参考: