PowerShell | ps1ファイルをダブルクリックで実行可能にする方法

PowerShell 基本,PowerShell

PowerShell | ps1ファイルをダブルクリックで実行可能にする方法

Windows PowerShellの実行ファイル「.ps1」をダブルクリックで実行可能にする方法を紹介しています。

確認した環境

OS Windows11 22H2
PowerShell 7.1.3

ショートカットを作成してダブルクリックで開くようにする

実行ファイル「.ps1」のショートカットを作成し「リンク先」、新規作成の場合は「項目の場所」を以下のように記述する事でショートカットからダブルクリックで「.ps1」ファイルを実行可能になります。

ps1ファイルのパスはコンテキストメニューの「パスのコピー」のままでOKです。

powershell.exe -NoExit -file “ps1ファイルのパス

PowerShellのウィンドウを閉じる場合は以下のように設定します。

powershell.exe -windowstyle hidden -executionpolicy bypass -file “ps1ファイルのパス

ps1ファイルのショートカットを作成する
ps1ファイルのショートカットを作成する
ps1ファイルのショートカット
ps1ファイルのショートカット

レジストリを変更してps1ファイルをダブルクリックで実行可能にする

PowerShellの実行ファイル「.ps1」はデフォルトではダブルクリックによる実行可能なファイルとして関連付けられておらず、無効になっています。
このためバッチファイルの「.bat」のように実行できません。

ps1ファイルをダブルクリックで実行可能にするには、PowerShellで以下のコマンドを実行していき拡張子「.ps1」のファイルを関連付けします。

以下、GPT-4による回答。

PowerShellスクリプト(.ps1ファイル)をダブルクリックで実行可能にするためには、ファイルの関連付けを変更する必要があります。これは、レジストリを変更することで行います。以下の手順でPowerShellスクリプトを実行できるようにします。

まず、PowerShellを管理者として実行します。

次に、以下のPowerShellコマンドをコピーして、管理者権限で開いたPowerShellに貼り付けます。これにより、.ps1ファイルに関連付けられたシェルの動作を変更します。

Set-ExecutionPolicy RemoteSigned -Scope CurrentUser

次に、以下のコマンドをコピーして、管理者権限で開いたPowerShellに貼り付けます。これにより、.ps1ファイルをダブルクリックするとPowerShellが実行されるようになります。

New-Item -Path HKCU:\SOFTWARE\Classes\Microsoft.PowerShellScript.1\Shell\Open\Command -Force
Set-ItemProperty -Path HKCU:\SOFTWARE\Classes\Microsoft.PowerShellScript.1\Shell\Open\Command -Name '(default)' -Value 'powershell.exe -NoLogo -ExecutionPolicy Bypass -File "%1"'

これで、.ps1ファイルをダブルクリックすると、PowerShellスクリプトが実行されるようになります。ただし、レジストリを変更することは、システムの動作に影響を与える可能性があるため、注意して行ってください。