前回のPowerShellでバイブコーディング入門で、PowerShellなら追加インストールなしでバイブコーディングを始められるとお伝えしました。「じゃあ早速」とPCの前に座ったものの、画面を開こうとした瞬間に迷ってしまう方は意外と多いです。
検索窓に「PowerShell」と打ち込むと似たようなアイコンが2つ出てくる。コマンドを実行したら「スクリプトの実行が無効になっています」という赤いエラー。管理者権限のない会社PCで、この先どうすればいいのか分からない――。
この記事では、起動方法の見分け方、5.1と7どちらを使うべきか、そして実行ポリシーというエラーの正体と管理者権限なしでの対処法まで、順番に整理していきます。会社のルールを守りながら、今日から試せる範囲をはっきりさせるのが狙いです。
PowerShellの起動方法――似た2つの画面に注意
スタートメニューを開き、「PowerShell」と検索してみましょう。
- Windowsキーを押す
- 「powershell」と入力する
- 検索結果に表示されたアプリをクリックする
ここで表示されるアイコンをよく見てください。青いアイコンが「Windows PowerShell 5.1」、黒いアイコンが「PowerShell 7」です。環境によっては片方しか表示されないこともあります。どちらも中身は同じ「PowerShell」という仕組みですが、バージョンが違う別のアプリだと考えてください。詳しくは次の見出しで整理します。
もう一つ注意したいのが、通常起動と「管理者として実行」の違いです。右クリックすると「管理者として実行」という選択肢が出てきますが、このシリーズでは基本的に使いません。管理者権限のない通常起動だけで、最後まで進められるように話を組み立てています。「うちの会社PCでは管理者権限なんてもらえない」という方も、そのまま読み進めてもらって大丈夫です。
Windows PowerShell 5.1とPowerShell 7、結局どっちを使えばいいのか
先ほどの2つのアイコン、正体は何なのでしょうか。
- Windows PowerShell 5.1:Windows 10(バージョン1607以降)・Windows 11とWindows Server 2016以降に標準搭載。会社PCの多くはこの範囲に収まります。新機能の追加は既に止まっていますが、枯れた(変化が少なく安定した)バージョンとして今も現役です。なお古いWindows 7・8.1では標準搭載ではなく、追加インストールが必要になります
- PowerShell 7:オープンソース化され、クロスプラットフォーム対応で開発が続いているバージョン。ただし標準では入っておらず、インストールには基本的に管理者権限が必要になります
正直なところ、機能だけ見ればPowerShell 7の方が新しく、動作が速い場面も多いです。ただこのシリーズは「会社PCに何も追加インストールせず完結する」ことを優先し、標準搭載の5.1を前提に進めます。すでにPowerShell 7が入っている環境の方は、そのまま7で進めても問題ありません。
自分がどちらを使っているかは、次のコマンドで確認できます。
$PSVersionTable
実行するとPSVersionという項目に数字が表示されます。「5.1」なら5.1、「7」から始まる数字であれば7です。PSEdition欄が「Desktop」なら5.1、「Core」なら7という見分け方も、あわせて覚えておくと確実です。
実行ポリシー(ExecutionPolicy)の基礎――なぜ「スクリプトが実行できません」と言われるのか
AIが書いてくれたコードを試そうとして、こんなエラーに出会った方もいるはずです。
このシステムではスクリプトの実行が無効になっているため……
これは「実行ポリシー(ExecutionPolicy)」という、PowerShellに組み込まれた安全装置が働いている状態です。マイクロソフトの公式ドキュメントによれば、これは悪意あるスクリプトを不用意に実行してしまわないための仕組み。Windowsクライアントの既定値は「Restricted」で、スクリプトファイル(拡張子.ps1)の実行を一切許可しない設定になっています。
ここで一つ、知っておいてほしい事実があります。AIが生成したコードを.ps1ファイルとして保存せず、コンソールにそのまま貼り付けて実行する。 その場合は、実行ポリシーの制限を受けません。1行ずつでも、まとめて数十行でも同じです。実行ポリシーが制限しているのはあくまで「スクリプトファイルの実行」であり、コンソールへの直接入力は最初から対象外というのが公式の仕様です。
ただし、これは実行ポリシーという「技術的な仕組み」の話であって、社内で決められたルールそのものを免除してくれるわけではありません。AIが書いたコードだからといって、中身を確認せずに貼り付けて実行するのは避けてください。エラーメッセージが出ないからといって、安全とは限らないからです。会社が未承認コードの実行やAIツールの利用そのものを制限している場合は、当然そちらのルールが優先されます。

実行ポリシーの変更が必要になるのは、コードを.ps1ファイルとして保存し、ダブルクリックや.\ファイル名.ps1という形で「ファイルとして」実行したくなったときだけです。始めたばかりの段階では、コンソール貼り付けで十分。ファイル化は、繰り返し使う定型作業が見えてきてから考えれば間に合います。
管理者権限がなくても変更できる実行ポリシーの設定方法
とはいえ、いずれ「このコード、ファイルとして保存して使い回したい」という場面は出てきます。そのときのために、管理者権限なしでできる設定方法を紹介しておきます。
会社PCで試す前に、一つだけお願いがあります。この設定変更は、情報システム部門やIT管理者が定めたルールを確認したうえで行ってください。 会社によっては、こうした変更自体を制限しているところもあります。ここで紹介するのはあくまで「個人アカウントの範囲でできる技術的な選択肢」の説明であり、社内ルールを回避するための手段として書いているわけではありません。
現在の設定は、次のコマンドで確認できます。
Get-ExecutionPolicy
変更するときは、次のコマンドを使います。
Set-ExecutionPolicy -Scope CurrentUser -ExecutionPolicy RemoteSigned
-Scope CurrentUserは「自分のアカウントだけに適用する」という指定です。マイクロソフト公式ドキュメントでは、コンピューター全体に適用するLocalMachineスコープの変更には「管理者として実行」が必要と明記されている一方、CurrentUserスコープにはその記載がなく、管理者権限なしで変更できます- とりあえず今のウィンドウだけで試したいなら、
-Scope Processという指定もあります。ウィンドウを閉じれば設定は自動的に元に戻るので、「まず試してみたい」というときに気軽に使える一時的な選択肢です。あくまで自己責任の範囲で RemoteSignedは、自分で書いた・貼り付けたスクリプトは実行できるものの、インターネットから直接ダウンロードした署名なしスクリプトはブロックするという、現実的なバランス設定です
一つ、正直に書いておきます。会社によっては、グループポリシーという仕組みで実行ポリシーがあらかじめ固定されていて、CurrentUserやProcessスコープを指定しても変更できないことがあります。公式ドキュメントでも、グループポリシーはどのスコープの設定よりも優先されると明記されています。エラーが出たら、それは「その会社が意図的にそう設定している」というサインです。無理に回避しようとせず、情シスに確認してください。実行ポリシーがどこまで頼りになる仕組みなのかは、シリーズ④のPowerShell×AIのセキュリティで改めて掘り下げます。
準備の最終チェック――AIに最初の指示を出してみる
ここまでの準備が整えば、あとは試すだけです。
ChatGPTでもClaudeでも構いません。「PowerShellで、デスクトップにあるファイルの一覧をテキストファイルに出力したい」のように、日本語で普段通りに伝えてみてください。返ってきたコードを、そのままコンソールに貼り付けて実行する。これが一番安全で、一番手軽な最初の一歩になります。
次のPowerShellで業務効率化では、ファイル整理やCSV処理といった、実際の業務に近い例を使いながら一緒に手を動かしていきます。
まとめ
- PowerShellには5.1と7の2種類があり、このシリーズは会社PCでも標準搭載されている5.1を前提に進める
- 実行ポリシーはスクリプトファイルの実行を制限する安全装置。コンソールへの直接貼り付けなら制限を受けない
- ファイルとして使いたくなったら、CurrentUser・Processスコープなら管理者権限なしで設定変更できる(ただし社内ルールが最優先)
次は、実際に手を動かしながらAIとのやり取りに慣れていく番です。PowerShellで業務効率化で、ファイル整理という身近な例から試してみませんか。
実機を使ってじっくり練習したい、社内ルールに沿った形で導入を進めたいという方には、ハンズオン形式のセミナーも行っています。気になる方は無料相談からお気軽にどうぞ。



コメント