Open3

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

豚&紙箱豚&紙箱

以下は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)スクリプトの実行を許可します。ProcessCurrentUserLocalMachineに変えられます。