「PowerShellでスクリプトを書いてみたけど、どうやって実行すればいいの?」
「.ps1
ファイルをダブルクリックしても動かない…」
そんな疑問をお持ちの方に向けて、この記事ではPowerShellスクリプトファイル(.ps1)を正しく起動する方法を初心者向けにわかりやすく解説します。
実行ポリシーの設定・管理者権限の必要性・安全な実行方法まで網羅しています。
PowerShellスクリプトとは?
PowerShellスクリプトは、.ps1
という拡張子のテキストファイルにコマンドをまとめて記述したものです。
Windows管理の自動化や、日常作業の効率化に欠かせない手段です。
スクリプトファイルを実行する4つの方法

方法①:PowerShellから直接実行
.\myscript.ps1
レントディレクトリにあるスクリプトを実行する場合。
パスにスペースがある場合はダブルクォートで囲みましょう:
& "C:\My Scripts\myscript.ps1"
方法②:右クリック → 「PowerShellで実行」
.ps1
ファイルを右クリックし、「PowerShellで実行(Run with PowerShell)」を選択するだけ。
ただしこの方法ではスクリプト終了後にウィンドウが閉じて結果が見えない点に注意。
方法③:powershell.exe から起動(コマンドプロンプト/ショートカットで使う)
powershell.exe -ExecutionPolicy Bypass -File "C:\Scripts\myscript.ps1"
この方法はバッチファイルやタスクスケジューラでの実行に便利です。
方法④:PowerShell 7(pwsh.exe)を使う場合
pwsh -File "myscript.ps1"
PowerShell Core(7以降)環境では powershell
ではなく pwsh
コマンドを使用します。
スクリプトが起動しないときの原因と対策
トラブル | 原因 | 対処法 |
---|---|---|
ファイルがスクリプトとして認識されない | 相対パスで呼び出していない | .\myscript.ps1 と入力する必要あり |
このシステムではスクリプトの実行が無効になっています | 実行ポリシーが「Restricted」 | Set-ExecutionPolicy で変更(下記参照) |
アクセスが拒否されました | 権限不足 | PowerShellを「管理者として実行」する必要あり |
実行ポリシーの変更手順(Set-ExecutionPolicy)
PowerShellの初期状態では、スクリプト実行が制限(Restricted)されています。
一度だけ次のように設定を変更すれば .ps1
の実行が可能になります。
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
主な実行ポリシーの種類:
ポリシー名 | 説明 |
---|---|
Restricted | スクリプトの実行禁止(初期設定) |
RemoteSigned | ダウンロードしたスクリプトには署名が必要 |
Unrestricted | すべてのスクリプトを実行可能(注意) |
タスクスケジューラやショートカットからの自動実行

タスクスケジューラを使う場合:
- タスクスケジューラを開く
- 「基本タスクの作成」→ 名前・トリガーを設定
- 実行するプログラム:
powershell.exe
- 引数:
-ExecutionPolicy Bypass -File "C:\Scripts\myscript.ps1"
デスクトップにショートカットを作る方法:
- デスクトップ上で右クリック → 「新規作成」→「ショートカット」
- 以下を入力:
powershell.exe -ExecutionPolicy Bypass -File "C:\Scripts\myscript.ps1"
WindowsTerminalから実行する方法(Windows 10/11):
- Windows Terminal起動
- PowerShellタブで以下を実行:
.\myscript.ps1
まとめ:スクリプトを使いこなして作業を自動化しよう
PowerShellスクリプトを正しく起動できるようになると、定型作業の自動化・環境設定の一括実行・システム監視の自動化などが簡単に実現できます。
ポイントまとめ
.ps1
ファイルは.\ファイル名
やpowershell.exe
で実行- 初回は
Set-ExecutionPolicy
の設定が必要 - GUI・CLI・タスクスケジューラ・ショートカットなど多様な起動方法がある
- 管理者として実行することで多くの制限が解除される
PowerShellスクリプトを使って、Windows環境をもっと柔軟に、自動化していきましょう!
コメント