Windows への PowerShell のインストールInstalling PowerShell on Windows

Windows に PowerShell をインストールする方法は複数あります。There are multiple ways to install PowerShell in Windows.

前提条件Prerequisites

PowerShell の最新リリースは、Windows 7 SP1、Server 2008 R2、およびそれ以降のバージョンでサポートされています。The latest release of PowerShell is supported on Windows 7 SP1, Server 2008 R2, and later versions.

WSMan を介して PowerShell のリモート処理を有効にするには、次の前提条件を満たす必要があります。To enable PowerShell remoting over WSMan, the following prerequisites need to be met:

  • Windows 10 より前のバージョンの Windows にユニバーサル C ランタイムをインストールします。Install the Universal C Runtime on Windows versions predating Windows 10. これは、直接ダウンロードすることも、Windows Update 経由で入手することもできます。It's available via direct download or Windows Update. 完全にパッチが適用されたシステムには、既にこのパッケージがインストールされています。Fully patched systems already have this package installed.
  • Windows Management Framework (WMF) 4.0 以降を Windows 7 と Windows Server 2008 R2 にインストールします。Install the Windows Management Framework (WMF) 4.0 or newer on Windows 7 and Windows Server 2008 R2. WMF の詳細については、WMF の概要に関する記事を参照してください。For more information about WMF, see WMF Overview.

インストーラー パッケージをダウンロードするDownload the installer package

Windows に PowerShell をインストールするには、[最新][]のインストール パッケージを GitHub からダウンロードします。To install PowerShell on Windows, download the latest install package from GitHub. 最新のプレビュー バージョンは、[リリース][] ページでも確認できます。You can also find the latest preview version on the releases page. リリース ページの [Assets] セクションまで下にスクロールします。Scroll down to the Assets section of the Release page. [Assets] セクションは折りたたまれている場合があります。その場合は、クリックして展開する必要があります。The Assets section may be collapsed, so you may need to click to expand it.

MSI パッケージのインストールInstalling the MSI package

MSI ファイルは、PowerShell-<version>-win-<os-arch>.msi のようになります。The MSI file looks like PowerShell-<version>-win-<os-arch>.msi. 次に例を示します。For example:

  • PowerShell-7.1.0-win-x64.msi
  • PowerShell-7.1.0-win-x86.msi

ダウンロードしたら、インストーラーをダブルクリックし、プロンプトの指示に従います。Once downloaded, double-click the installer and follow the prompts.

インストーラーにより、Windows の [スタート] メニューにショートカットが作成されます。The installer creates a shortcut in the Windows Start Menu.

  • パッケージは、既定で $env:ProgramFiles\PowerShell\<version> にインストールされます。By default the package is installed to $env:ProgramFiles\PowerShell\<version>
  • PowerShell は、スタート メニューまたは $env:ProgramFiles\PowerShell\<version>\pwsh.exe から起動できます。You can launch PowerShell via the Start Menu or $env:ProgramFiles\PowerShell\<version>\pwsh.exe

注意

PowerShell 7.1 は新しいディレクトリにインストールされ、Windows PowerShell 5.1 と side-by-side 実行されます。PowerShell 7.1 installs to a new directory and runs side-by-side with Windows PowerShell 5.1. PowerShell 7.1 はインプレース アップグレードであり、PowerShell Core 6.xPowerShell 7.1 is an in-place upgrade that replaces PowerShell 6.x. または PowerShell 7.0 が置き換えられます。or PowerShell 7.0.

  • PowerShell 7.1 は $env:ProgramFiles\PowerShell\7 にインストールされますPowerShell 7.1 is installed to $env:ProgramFiles\PowerShell\7
  • $env:ProgramFiles\PowerShell\7 フォルダーは $env:PATH に追加されますThe $env:ProgramFiles\PowerShell\7 folder is added to $env:PATH
  • $env:ProgramFiles\PowerShell\6 フォルダーは削除されますThe $env:ProgramFiles\PowerShell\6 folder is deleted

PowerShell 7.1 を他のバージョンと side-by-side 実行する場合、ZIP インストール手法を利用し、他のバージョンを別のフォルダーにインストールしてください。If you need to run PowerShell 7.1 side-by-side with other versions, use the ZIP install method to install the other version to a different folder.

コマンド ラインからの管理者インストールAdministrative install from the command line

MSI パッケージはコマンド ラインからインストールできるため、管理者はユーザーの介入なしにパッケージを展開できます。MSI packages can be installed from the command line allowing administrators to deploy packages without user interaction. MSI パッケージには、インストールのオプションを制御するための次のプロパティが含まれます。The MSI package includes the following properties to control the installation options:

  • ADD_EXPLORER_CONTEXT_MENU_OPENPOWERSHELL - このプロパティでは、エクスプローラーのコンテキスト メニューに [Open PowerShell](PowerShell を開く) 項目を追加するためのオプションを制御します。ADD_EXPLORER_CONTEXT_MENU_OPENPOWERSHELL - This property controls the option for adding the Open PowerShell item to the context menu in Windows Explorer.
  • ENABLE_PSREMOTING - このプロパティでは、インストール中に PowerShell リモート処理を有効にするためのオプションを制御します。ENABLE_PSREMOTING - This property controls the option for enabling PowerShell remoting during installation.
  • REGISTER_MANIFEST - このプロパティでは、Windows イベント ログのマニフェストを登録するためのオプションを制御します。REGISTER_MANIFEST - This property controls the option for registering the Windows Event Logging manifest.

すべてのインストール オプションを有効にして PowerShell をサイレント インストールする方法を、次の例に示します。The following example shows how to silently install PowerShell with all the install options enabled.

msiexec.exe /package PowerShell-7.1.0-win-x64.msi /quiet ADD_EXPLORER_CONTEXT_MENU_OPENPOWERSHELL=1 ENABLE_PSREMOTING=1 REGISTER_MANIFEST=1

Msiexec.exe 用のコマンド ライン オプションの完全な一覧については、コマンド ライン オプションに関するページをご覧ください。For a full list of command-line options for Msiexec.exe, see Command line options.

インストール時に作成されるレジストリ キーRegistry keys created during installation

PowerShell 7.1 以降では、MSI パッケージによって、インストール場所と PowerShell のバージョンを格納するレジストリ キーが作成されます。Beginning in PowerShell 7.1, the MSI package creates registry keys that store the installation location and version of PowerShell. これらの値は HKLM\Software\Microsoft\PowerShellCore\InstalledVersions\<GUID> にあります。These values are located in HKLM\Software\Microsoft\PowerShellCore\InstalledVersions\<GUID>. <GUID> の値は、ビルドの種類 (リリースまたはプレビュー)、メジャー バージョン、およびアーキテクチャごとに一意です。The value of <GUID> is unique for each build type (release or preview), major version, and architecture.

ReleaseRelease アーキテクチャArchitecture レジストリ キーRegistry Key
7.1.x リリース7.1.x Release x86x86 HKLM\Software\Microsoft\PowerShellCore\InstalledVersions\1d00683b-0f84-4db8-a64f-2f98ad42fe06
7.1.x リリース7.1.x Release X64x64 HKLM\Software\Microsoft\PowerShellCore\InstalledVersions\31ab5147-9a97-4452-8443-d9709f0516e1
7.1.x プレビュー7.1.x Preview x86x86 HKLM\Software\Microsoft\PowerShellCore\InstalledVersions\86abcfbd-1ccc-4a88-b8b2-0facfde29094
7.1.x プレビュー7.1.x Preview X64x64 HKLM\Software\Microsoft\PowerShellCore\InstalledVersions\39243d76-adaf-42b1-94fb-16ecf83237c8

これは、管理者と開発者が PowerShell へのパスを見つけるために使用できます。This can be used by administrators and developers to find the path to PowerShell. <GUID> の値は、すべてのプレビューおよびマイナー バージョンのリリースで同じになります。The <GUID> values will be the same for all preview and minor version releases. <GUID> の値はメジャー リリースごとに変更されます。The <GUID> values are changed for each major release.

ZIP パッケージのインストールInstalling the ZIP package

PowerShell バイナリ ZIP アーカイブは、高度な展開シナリオ用に用意されています。PowerShell binary ZIP archives are provided to enable advanced deployment scenarios. リリース ページから、次のいずれかの ZIP アーカイブをダウンロードします。Download one of the following ZIP archives from the releases page.

  • PowerShell-7.1.0-win-x64.zipPowerShell-7.1.0-win-x64.zip
  • PowerShell-7.1.0-win-x86.zipPowerShell-7.1.0-win-x86.zip
  • PowerShell-7.1.0-win-arm64.zipPowerShell-7.1.0-win-arm64.zip
  • PowerShell-7.1.0-win-arm32.zipPowerShell-7.1.0-win-arm32.zip

ファイルのダウンロード方法によっては、Unblock-File コマンドレットを使用して、ファイルのブロックを解除することが必要になる場合があります。Depending on how you download the file you may need to unblock the file using the Unblock-File cmdlet. 任意の場所にコンテンツを解凍し、そこから pwsh.exe を実行します。Unzip the contents to the location of your choice and run pwsh.exe from there. MSI パッケージをインストールする場合とは異なり、ZIP アーカイブをインストールしても、前提条件は確認されません。Unlike installing the MSI packages, installing the ZIP archive doesn't check for prerequisites. WSMan 経由でのリモート処理を正常に動作させるために、前提条件を満たしていることを確かめてください。For remoting over WSMan to work properly, ensure that you've met the prerequisites.

この方法を使用して、Microsoft Surface Pro X のようなコンピューターに ARM ベース バージョンの PowerShell をインストールします。最適な結果を得るには、PowerShell を $env:ProgramFiles\PowerShell\7 フォルダーにインストールします。Use this method to install the ARM-based version of PowerShell on computers like the Microsoft Surface Pro X. For best results, install PowerShell to the to $env:ProgramFiles\PowerShell\7 folder.

Windows 10 IoT Enterprise への展開Deploying on Windows 10 IoT Enterprise

Windows 10 IoT Enterprise には、PowerShell 7 の展開に使用できる Windows PowerShell が付属しています。Windows 10 IoT Enterprise comes with Windows PowerShell, which we can use to deploy PowerShell 7.

  1. ターゲット デバイスに対して PSSession を作成しますCreate PSSession to target device

    Set-Item -Path WSMan:\localhost\Client\TrustedHosts <deviceip>
    $S = New-PSSession -ComputerName <deviceIp> -Credential Administrator
    
  2. ZIP パッケージをデバイスにコピーしますCopy the ZIP package to the device

    # change the destination to however you had partitioned it with sufficient
    # space for the zip and the unzipped contents
    # the path should be local to the device
    Copy-Item .\PowerShell-<version>-win-<os-arch>.zip -Destination u:\users\administrator\Downloads -ToSession $s
    
  3. デバイスに接続してアーカイブを展開しますConnect to the device and expand the archive

    Enter-PSSession $s
    Set-Location u:\users\administrator\downloads
    Expand-Archive .\PowerShell-<version>-win-<os-arch>.zip
    
  4. PowerShell 7 へのリモート処理を設定しますSet up remoting to PowerShell 7

    Set-Location .\PowerShell-<version>-win-<os-arch>
    # Be sure to use the -PowerShellHome parameter otherwise it'll try to create a new
    # endpoint with Windows PowerShell 5.1
    .\Install-PowerShellRemoting.ps1 -PowerShellHome .
    # You'll get an error message and will be disconnected from the device because
    # it has to restart WinRM
    
  5. デバイス上の PowerShell 7 エンドポイントに接続しますConnect to PowerShell 7 endpoint on device

    # Be sure to use the -Configuration parameter. If you omit it, you will connect to Windows PowerShell 5.1
    Enter-PSSession -ComputerName <deviceIp> -Credential Administrator -Configuration powershell.<version>
    

Windows 10 IoT Core への展開Deploying on Windows 10 IoT Core

PowerShell 7 の展開に使用できる IOT_POWERSHELL 機能を取り込む場合、Windows 10 IoT Core によって Windows PowerShell が追加されます。Windows 10 IoT Core adds Windows PowerShell when you include IOT_POWERSHELL feature, which we can use to deploy PowerShell 7. 上記で Windows 10 IoT Enterprise に対して定義した手順は、IoT Core にも適用できます。The steps defined above for Windows 10 IoT Enterprise can be followed for IoT Core as well.

配布イメージに最新の PowerShell を追加する場合は、[Import-PSCoreRelease][] コマンドを使用して、ワークスペースにパッケージを取り込み、さらに OPENSRC_POWERSHELL 機能をご利用のイメージに追加します。For adding the latest PowerShell in the shipping image, use [Import-PSCoreRelease][] command to include the package in the workarea and add OPENSRC_POWERSHELL feature to your image.

注意

ARM64 アーキテクチャの場合、IOT_POWERSHELL を取り込むときに、Windows PowerShell は追加されません。For ARM64 architecture, Windows PowerShell is not added when you include IOT_POWERSHELL. そのため、zip ベースのインストールは機能しません。So the zip based install will not work. イメージに追加するには、Import-PSCoreRelease コマンドを使用する必要があります。You will need to use Import-PSCoreRelease command to add it in the image.

Nano Server への展開Deploying on Nano Server

以下の手順では、Nano Server が "ヘッドレス" OS であり、あるバージョンの PowerShell が既に実行されていることを前提としています。These instructions assume that the Nano Server is a "headless" OS that has a version of PowerShell is already running on it. 詳細については、Nano Server Image Builder のドキュメントをご覧ください。For more information, see the Nano Server Image Builder documentation.

PowerShell バイナリを展開するには、2 つの方法があります。PowerShell binaries can be deployed using two different methods.

  1. オフライン: Nano Server VHD をマウントし、zip ファイルの中身をマウント イメージ内の選択した場所に展開します。Offline - Mount the Nano Server VHD and unzip the contents of the zip file to your chosen location within the mounted image.
  2. オンライン: zip ファイルを PowerShell セッションを介して転送し、選択した場所にそれを展開します。Online - Transfer the zip file over a PowerShell Session and unzip it in your chosen location.

どちらの場合も、Windows 10 x64 の ZIP リリース パッケージが必要です。In both cases, you need the Windows 10 x64 ZIP release package. PowerShell の "管理者" インスタンス内でコマンドを実行してください。Run the commands within an "Administrator" instance of PowerShell.

PowerShell のオフラインでの展開Offline Deployment of PowerShell

  1. お好みの zip ユーティリティを使用して、マウントされた Nano Server イメージ内のディレクトリにパッケージを解凍します。Use your favorite zip utility to unzip the package to a directory within the mounted Nano Server image.
  2. イメージをマウント解除し、ブートします。Unmount the image and boot it.
  3. Windows PowerShell の組み込みインスタンスに接続します。Connect to the built-in instance of Windows PowerShell.
  4. 「[別のインスタンスのテクニック][]」の、リモート エンドポイントを作成する手順に従います。Follow the instructions to create a remoting endpoint using the ["another instance technique"][].

PowerShell のオンラインでの展開Online Deployment of PowerShell

次の手順に従って、PowerShell を Nano Server に展開します。Deploy PowerShell to Nano Server using the following steps.

  • Windows PowerShell の組み込みインスタンスに接続しますConnect to the built-in instance of Windows PowerShell

    $session = New-PSSession -ComputerName <Nano Server IP address> -Credential <An Administrator account on the system>
    
  • Nano Server のインスタンスにファイルをコピーするCopy the file to the Nano Server instance

    Copy-Item <local PS Core download location>\powershell-<version>-win-x64.zip c:\ -ToSession $session
    
  • セッションに入るEnter the session

    Enter-PSSession $session
    
  • ZIP ファイルを解凍しますExtract the ZIP file

    # Insert the appropriate version.
    Expand-Archive -Path C:\powershell-<version>-win-x64.zip -DestinationPath "C:\PowerShell_<version>"
    
  • WSMan を使用してリモート処理を行う場合、「[別のインスタンスのテクニック][]」の、リモート エンドポイントを作成する手順に従います。If you want WSMan-based remoting, follow the instructions to create a remoting endpoint using the ["another instance technique"][].

.NET グローバル ツールとしてインストールするInstall as a .NET Global tool

.NET Core SDK が既にインストールされている場合は、PowerShell を .NET グローバル ツールとして簡単にインストールできます。If you already have the .NET Core SDK installed, it's easy to install PowerShell as a .NET Global tool.

dotnet tool install --global PowerShell

dotnet tool install によって、$env:PATH 環境変数に $env:USERPROFILE\dotnet\tools が追加されます。The dotnet tool installer adds $env:USERPROFILE\dotnet\tools to your $env:PATH environment variable. ただし、現在実行中のシェルには更新された $env:PATH が設定されていません。However, the currently running shell doesn't have the updated $env:PATH. 新しいシェルからは、「pwsh」と入力すると PowerShell を起動できます。You can start PowerShell from a new shell by typing pwsh.

Winget を使用して PowerShell をインストールするInstall PowerShell via Winget

開発者は、winget コマンドライン ツールを使用して、Windows 10 コンピューター上のアプリケーションの検出、インストール、アップグレード、削除、および構成を行うことができます。The winget command-line tool enables developers to discover, install, upgrade, remove, and configure applications on Windows 10 computers. このツールは、Windows パッケージ マネージャー サービスに対するクライアント インターフェイスです。This tool is the client interface to the Windows Package Manager service.

注意

winget ツールは現在プレビュー段階です。The winget tool is currently a preview. 現時点では、計画されたすべての機能を使用できるわけではありません。Not all planned functionality is available at this time. 運用環境の展開シナリオでは、この方法を使用しないでください。You should not use this method in a production deployment scenario. システム要件とインストール手順の一覧については、winget に関するドキュメントを参照してください。See the winget documentation for a list of system requirements and install instructions.

次のコマンドを使用すると、公開済みの winget パッケージを使用して PowerShell をインストールできます。The following commands can be used to install PowerShell using the published winget packages:

  1. 最新バージョンの PowerShell を検索しますSearch for the latest version of PowerShell

    winget search Microsoft.PowerShell
    
    Name               Id                           Version
    ---------------------------------------------------------------
    PowerShell         Microsoft.PowerShell         7.1.0
    PowerShell-Preview Microsoft.PowerShell-Preview 7.1.0-preview.5
    
  2. --exact パラメーターを使用して、いずれかのバージョンの PowerShell をインストールしますInstall a version of PowerShell using the --exact parameter

    winget install --name PowerShell --exact
    winget install --name PowerShell-Preview --exact
    

Microsoft Store からインストールするInstalling from the Microsoft Store

PowerShell 7.1 が Microsoft Store に公開されています。PowerShell 7.1 has been published to the Microsoft Store. PowerShell リリースは Microsoft Store Web サイトまたは Windows の Store アプリケーションで見つけることができます。You can find the PowerShell release on the Microsoft Store website or in the Store application in Windows.

Microsoft Store パッケージの利点:Benefits of the Microsoft Store package:

  • Windows 10 に直接組み込まれた自動更新Automatic updates built right into Windows 10
  • Intune や SCCM など、他のソフトウェア配布メカニズムとの統合Integrates with other software distribution mechanisms like Intune and SCCM

制限事項:Limitations:

MSIX パッケージは、一部のファイルシステムとレジストリの場所へのアクセスを仮想化するアプリケーション サンドボックスで実行されます。MSIX packages run in an application sandbox that virtualizes access to some filesystem and registry locations.

  • HKEY_CURRENT_USER の下でのレジストリ変更はすべて、書き込み時、ユーザーごとにアプリ別のプライベートの場所にコピーされます。All registry changes under HKEY_CURRENT_USER are copied on write to a private, per-user, per-app location. そのため、これらの値は他のアプリケーションでは使用できません。Therefore, those values are not available to other applications.
  • $PSHOME に格納されているシステムレベルの構成設定は変更できません。Any system-level configuration settings stored in $PSHOME cannot be modified. これには WSMAN 構成が含まれます。This includes the WSMAN configuration. これにより、リモート セッションが PowerShell のストアベース インストールに接続できなくなります。This prevents remote sessions from connecting to Store-based installs of PowerShell. ユーザーレベル構成と SSH リモート処理がサポートされていません。User-level configurations and SSH remoting are supported.

詳細については、「Windows でパッケージ化されたデスクトップ アプリが動作するしくみについて」を参照してください。For more information, see Understanding how packaged desktop apps run on Windows.

MSIX パッケージの使用Using the MSIX package

注意

PowerShell のプレビュー ビルドには MSIX パッケージが含まれています。The preview builds of PowerShell include an MSIX package. MSIX パッケージは公式にサポートされていません。The MSIX package is not officially supported. このパッケージは、プレビュー期間中のテスト目的で作られています。The package is built for testing purposes during the preview period.

Windows 10 クライアントに MSIX パッケージを手動でインストールするには、Microsoft の GitHub リリース ページから MSIX パッケージをダウンロードしてください。To manually install the MSIX package on a Windows 10 client, download the MSIX package from our GitHub releases page. インストールしたいリリースの [Assets] セクションまでスクロールダウンします。Scroll down to the Assets section of the Release you want to install. [Assets] セクションは折りたたまれている場合があります。その場合は、クリックして展開する必要があります。The Assets section may be collapsed, so you may need to click to expand it.

MSIX ファイルは、PowerShell-<version>-win-<os-arch>.msix のようになります。The MSIX file looks like this - PowerShell-<version>-win-<os-arch>.msix

パッケージをインストールするには、Add-AppxPackage コマンドレットを使用する必要があります。To install the package, you must use the Add-AppxPackage cmdlet.

Add-AppxPackage PowerShell-<version>-win-<os-arch>.msix

リモート エンドポイントの作成方法How to create a remoting endpoint

PowerShell では、WSMan と SSH の両方について PowerShell Remoting Protocol (PSRP) がサポートされています。PowerShell supports the PowerShell Remoting Protocol (PSRP) over both WSMan and SSH. 詳細については、次を参照してください。For more information, see:

既存のインストールのアップグレードUpgrading an existing installation

アップグレード時に最適な結果を得るには、最初に PowerShell をインストールしたときと同じインストール方法を使用してください。For best results when upgrading, you should use the same install method you used when you first installed PowerShell. 各インストール方法では、PowerShell をそれぞれ異なる場所にインストールします。Each installation method installs PowerShell in a different location. PowerShell がインストールされた方法がわからない場合は、この記事のパッケージ情報とインストールされている場所を比較できます。If you are not sure how PowerShell was installed, you can compare the installed location with the package information in this article. MSI パッケージを使用してインストールした場合、その情報は [プログラムと機能] コントロール パネルに表示されます。If you installed via the MSI package, that information appears in the Programs and Features Control Panel.

インストールのサポートInstallation support

Microsoft は、このドキュメントでインストール方法をサポートしています。Microsoft supports the installation methods in this document. 他のソースには、利用可能な別のインストール方法が存在する可能性があります。There may be other methods of installation available from other sources. そのようなツールや方法が役に立つものであっても、Microsoft は、そのような方法をサポートすることはできません。While those tools and methods may work, Microsoft cannot support those methods.

「[別のインスタンスのテクニック]: ../learn/remoting/WSMan-Remoting-in-PowerShell-Core.md#executed-by-another-instance-of-powershell-on-behalf-of-the-instance-that-it-will-register」["another instance technique"]: ../learn/remoting/WSMan-Remoting-in-PowerShell-Core.md#executed-by-another-instance-of-powershell-on-behalf-of-the-instance-that-it-will-register [Import-PSCoreRelease]: https://github.com/ms-iot/iot-adk-addonkit/blob/master/Tools/IoTCoreImaging/Docs/Import-PSCoreRelease.md#Import-PSCoreRelease