Memasang PowerShell di Windows

Ada beberapa cara untuk menginstal PowerShell di Windows. Setiap metode penginstalan dirancang untuk mendukung skenario dan alur kerja yang berbeda. Pilih metode yang paling sesuai dengan kebutuhan Anda.

  • Winget - Cara yang disarankan untuk menginstal PowerShell pada klien Windows
  • Paket MSI - Pilihan terbaik untuk Windows Server dan skenario penyebaran perusahaan
  • Paket ZIP - Cara term mudah untuk "beban samping" atau menginstal beberapa versi
    • Gunakan metode ini untuk sistem berbasis Windows Nano Server, Windows IoT, dan Arm
  • Alat .NET Global - Pilihan yang baik untuk pengembang .NET yang menginstal dan menggunakan alat global lainnya
  • Paket Microsoft Store - Cara mudah untuk menginstal untuk pengguna PowerShell yang santai tetapi memiliki batasan

Catatan

Perintah penginstalan dalam artikel ini adalah untuk rilis PowerShell stabil terbaru. Untuk menginstal versi PowerShell yang berbeda, sesuaikan perintah agar sesuai dengan versi yang Anda butuhkan. Tautan berikut mengarahkan Anda ke halaman rilis untuk setiap versi di repositori PowerShell di GitHub.

Tautan unduhan untuk setiap paket ditemukan di bagian Aset di halaman Rilis . Bagian Aset mungkin diciutkan, jadi Anda mungkin perlu mengklik untuk memperluasnya.

Winget, Pengelola Paket Windows, adalah alat baris perintah memungkinkan pengguna untuk menemukan, menginstal, meningkatkan, menghapus, dan mengonfigurasi aplikasi di komputer klien Windows. Alat ini adalah antarmuka klien ke layanan Pengelola Paket Windows. Alat winget baris perintah dibundel dengan Windows 11 dan versi modern Windows 10 secara default sebagai Penginstal Aplikasi.

Catatan

Lihat dokumentasi winget untuk daftar persyaratan sistem dan instruksi penginstalan. Winget tidak tersedia di Windows Server 2022 atau versi yang lebih lama.

Windows Server 2025 Preview Build 26085 dan yang lebih baru termasuk winget untuk Windows Server dengan Pengalaman Desktop saja. Untuk informasi selengkapnya, lihat Mengumumkan Windows Server Preview Build 26085.

Perintah berikut dapat digunakan untuk menginstal PowerShell menggunakan paket yang diterbitkan winget :

Cari versi terbaru PowerShell

winget search Microsoft.PowerShell
Name               Id                           Version   Source
-----------------------------------------------------------------
PowerShell         Microsoft.PowerShell         7.4.2.0   winget
PowerShell Preview Microsoft.PowerShell.Preview 7.5.0.2   winget

Menginstal Pratinjau PowerShell atau PowerShell menggunakan id parameter

winget install --id Microsoft.Powershell --source winget
winget install --id Microsoft.Powershell.Preview --source winget

Catatan

Pada sistem Windows yang menggunakan prosesor X86 atau X64, winget menginstal paket MSI. Pada sistem yang menggunakan prosesor Arm64, winget menginstal paket Microsoft Store (MSIX). Untuk informasi selengkapnya, lihat Menginstal dari Microsoft Store.

Menginstal paket MSI

Untuk menginstal PowerShell di Windows, gunakan tautan berikut untuk mengunduh paket penginstalan dari GitHub.

Setelah diunduh, klik dua kali file penginstal dan ikuti perintah.

Alat penginstal membuat pintasan di Menu Mulai Windows.

  • Secara default paket diinstal ke $env:ProgramFiles\PowerShell\<version>
  • Anda dapat meluncurkan PowerShell melalui Menu Mulai atau $env:ProgramFiles\PowerShell\<version>\pwsh.exe

Catatan

PowerShell 7.4 diinstal ke direktori baru dan berjalan berdampingan dengan Windows PowerShell 5.1. PowerShell 7.4 adalah peningkatan di tempat yang menghapus versi PowerShell 7 sebelumnya. Versi pratinjau PowerShell dapat diinstal berdampingan dengan versi PowerShell lainnya.

  • PowerShell 7.4 diinstal ke $env:ProgramFiles\PowerShell\7
  • Folder $env:ProgramFiles\PowerShell\7 ditambahkan ke $env:PATH

Jika Anda perlu menjalankan PowerShell 7.4 berdampingan dengan versi lain, gunakan metode penginstalan ZIP untuk menginstal versi lain ke folder yang berbeda.

Dukungan untuk Pembaruan Microsoft di PowerShell 7.2 dan yang lebih baru

PowerShell 7.2 dan yang lebih baru memiliki dukungan untuk Microsoft Update. Saat mengaktifkan fitur ini, Anda akan mendapatkan pembaruan PowerShell 7 terbaru dalam alur manajemen Microsoft Update (MU) tradisional Anda, baik itu dengan Windows Update for Business, WSUS, Microsoft Endpoint Configuration Manager, atau dialog MU interaktif di Pengaturan.

Paket MSI PowerShell menyertakan opsi baris perintah berikut:

  • USE_MU - Properti ini memiliki dua nilai yang mungkin:
    • 1 (default) - Memilih untuk memperbarui melalui Microsoft Update, WSUS, atau Configuration Manager
    • 0 - Jangan memilih untuk memperbarui melalui Microsoft Update, WSUS, atau Configuration Manager
  • ENABLE_MU
    • 1 (default) - Memilih menggunakan Pembaruan Microsoft untuk Pembaruan Otomatis
    • 0 - Jangan ikut serta menggunakan Microsoft Update

Catatan

Mengaktifkan pembaruan mungkin telah diatur dalam penginstalan sebelumnya atau konfigurasi manual. Menggunakan ENABLE_MU=0 tidak menghapus pengaturan yang ada. Selain itu, pengaturan ini dapat ditimpa oleh pengaturan Kebijakan Grup yang dikontrol oleh administrator Anda.

Untuk informasi selengkapnya, lihat Tanya Jawab Umum Pembaruan Microsoft PowerShell.

Menginstal paket MSI dari baris perintah

Paket MSI dapat diinstal dari baris perintah yang memungkinkan administrator untuk menyebarkan paket tanpa interaksi pengguna. Paket MSI menyertakan properti berikut untuk mengontrol opsi penginstalan:

  • ADD_EXPLORER_CONTEXT_MENU_OPENPOWERSHELL - Properti ini mengontrol opsi untuk menambahkan Open PowerShell item ke menu konteks di Windows Explorer.
  • ADD_FILE_CONTEXT_MENU_RUNPOWERSHELL - Properti ini mengontrol opsi untuk menambahkan Run with PowerShell item ke menu konteks di Windows Explorer.
  • ENABLE_PSREMOTING - Properti ini mengontrol opsi untuk mengaktifkan jarak jauh PowerShell selama penginstalan.
  • REGISTER_MANIFEST - Properti ini mengontrol opsi untuk mendaftarkan manifes Windows Event Logging.
  • ADD_PATH - Properti ini mengontrol opsi untuk menambahkan PowerShell ke variabel lingkungan Windows PATH.
  • DISABLE_TELEMETRY - Properti ini mengontrol opsi untuk menonaktifkan telemetri PowerShell dengan mengatur POWERSHELL_TELEMETRY_OPTOUT variabel lingkungan.
  • INSTALLFOLDER - Properti ini mengontrol direktori penginstalan. Default adalah $env:ProgramFiles\PowerShell\. Ini adalah lokasi tempat alat penginstal membuat subfolder versi. Anda tidak dapat mengubah nama subfolder versi.
    • Untuk rilis saat ini, subfolder versinya adalah 7
    • Untuk rilis pratinjau, subfolder versinya adalah 7-preview

Contoh berikut menunjukkan cara menginstal PowerShell secara diam-diam dengan semua opsi penginstalan diaktifkan.

msiexec.exe /package PowerShell-7.4.2-win-x64.msi /quiet ADD_EXPLORER_CONTEXT_MENU_OPENPOWERSHELL=1 ADD_FILE_CONTEXT_MENU_RUNPOWERSHELL=1 ENABLE_PSREMOTING=1 REGISTER_MANIFEST=1 USE_MU=1 ENABLE_MU=1 ADD_PATH=1

Untuk daftar lengkap opsi baris perintah untuk Msiexec.exe, lihat Opsi baris perintah.

Menginstal paket ZIP

Arsip ZIP biner PowerShell disediakan untuk mengaktifkan skenario penyebaran tingkat lanjut. Unduh salah satu arsip ZIP berikut dari halaman rilis saat ini.

Bergantung pada bagaimana Anda mengunduh file, Anda mungkin perlu membuka blokir file menggunakan Unblock-File cmdlet. Unzip konten ke lokasi pilihan Anda dan jalankan pwsh.exe dari sana. Tidak seperti menginstal paket MSI, menginstal arsip ZIP tidak memeriksa prasyarat. Agar jarak jauh melalui WSMan berfungsi dengan baik, pastikan Anda telah memenuhi prasyarat.

Gunakan metode ini untuk menginstal PowerShell versi berbasis ARM di komputer seperti Microsoft Surface Pro X. Untuk hasil terbaik, instal PowerShell ke folder ke $env:ProgramFiles\PowerShell\7 .

Instal sebagai alat .NET Global

Jika Anda sudah menginstal .NET Core SDK , Anda dapat menginstal PowerShell sebagai alat .NET Global.

dotnet tool install --global PowerShell

Alat penginstal $HOME\.dotnet\tools dotnet menambahkan ke variabel lingkungan Anda $env:PATH . Namun, shell yang sedang berjalan tidak memiliki pembaruan $env:PATH. Anda dapat memulai PowerShell dari shell baru dengan mengetik pwsh.

Menginstal dari Microsoft Store

PowerShell dapat diinstal dari Microsoft Store. Anda dapat menemukan rilis PowerShell di situs Microsoft Store atau di aplikasi Store di Windows.

Manfaat paket Microsoft Store:

  • Pembaruan otomatis yang dibangun langsung ke Windows
  • Terintegrasi dengan mekanisme distribusi perangkat lunak lain seperti Intune dan Configuration Manager
  • Dapat menginstal pada sistem Windows menggunakan prosesor x86, x64, atau Arm64

Pembatasan yang diketahui

Secara default, paket Windows Store berjalan dalam kotak pasir aplikasi yang memvirtualisasikan akses ke beberapa lokasi sistem file dan registri. Perubahan pada file virtual dan lokasi registri tidak bertahan di luar kotak pasir aplikasi.

Kotak pasir ini memblokir semua perubahan pada folder akar aplikasi. Pengaturan konfigurasi tingkat sistem apa pun yang disimpan di $PSHOME tidak dapat dimodifikasi. Ini termasuk konfigurasi WSMAN. Ini mencegah sesi jarak jauh tersambung ke instalasi PowerShell berbasis Store. Konfigurasi tingkat pengguna dan jarak jauh SSH didukung.

Perintah berikut perlu menulis ke $PSHOME. Perintah ini tidak didukung dalam instans Microsoft Store PowerShell.

  • Register-PSSessionConfiguration
  • Update-Help -Scope AllUsers
  • Enable-ExperimentalFeature -Scope AllUsers
  • Set-ExecutionPolicy -Scope LocalMachine

Untuk informasi selengkapnya, lihat Memahami cara aplikasi desktop kemasan berjalan di Windows.

Perubahan untuk PowerShell 7.2

Dimulai di PowerShell 7.2, paket PowerShell sekarang dikecualikan dari virtualisasi file dan registri. Perubahan pada file virtual dan lokasi registri sekarang bertahan di luar kotak pasir aplikasi. Namun, perubahan pada folder akar aplikasi masih diblokir.

Penting

Anda harus berjalan pada Windows build 1903 atau yang lebih tinggi agar pengecualian ini berfungsi.

Menginstal versi pratinjau

Pratinjau rilis penginstalan $env:ProgramFiles\PowerShell\7-preview PowerShell 7 agar dapat dijalankan berdampingan dengan rilis PowerShell non-pratinjau. PowerShell 7.4 adalah rilis pratinjau berikutnya.

Memutakhirkan penginstalan yang ada

Untuk hasil terbaik saat memutakhirkan, Anda harus menggunakan metode penginstalan yang sama dengan yang Anda gunakan saat pertama kali menginstal PowerShell. Jika Anda tidak yakin bagaimana PowerShell diinstal, Anda dapat memeriksa nilai $PSHOME variabel, yang selalu menunjuk ke direktori yang berisi PowerShell bahwa sesi saat ini sedang berjalan.

  • Jika nilainya adalah $HOME\.dotnet\tools, PowerShell diinstal dengan alat .NET Global.
  • Jika nilainya adalah $Env:ProgramFiles\PowerShell\7, PowerShell diinstal sebagai paket MSI atau dengan Winget di komputer dengan prosesor X86 atau x64.
  • Jika nilai dimulai dengan $Env:ProgramFiles\WindowsApps\, PowerShell diinstal sebagai paket Microsoft Store atau dengan Winget di komputer dengan prosesor ARM.
  • Jika nilainya adalah hal lain, kemungkinan PowerShell diinstal sebagai paket ZIP.

Jika Anda menginstal melalui paket MSI, informasi tersebut juga muncul di Panel Kontrol Program dan Fitur.

Untuk menentukan apakah PowerShell dapat dimutakhirkan dengan Winget, jalankan perintah berikut:

winget list --name PowerShell --upgrade-available

Jika ada peningkatan yang tersedia, output menunjukkan versi terbaru yang tersedia.

Catatan

Saat memutakhirkan, PowerShell tidak akan meningkatkan dari versi LTS ke versi non-LTS. Ini hanya meningkatkan ke versi terbaru LTS, misalnya, dari 7.2.3 ke 7.2.19. Untuk meningkatkan dari rilis LTS ke versi stabil yang lebih baru atau LTS berikutnya, Anda perlu menginstal versi baru dengan MSI untuk rilis tersebut.

Saat versi yang diinstal bukan versi LTS, PowerShell meningkatkan ke versi stabil terbaru.

Menyebarkan di Windows 10 IoT Enterprise

Windows 10 IoT Enterprise dilengkapi dengan Windows PowerShell, yang dapat kita gunakan untuk menyebarkan PowerShell 7.

# Replace the placeholder information for the following variables:
$deviceip = '<device ip address'
$zipfile = 'PowerShell-7.4.2-win-arm64.zip'
$downloadfolder = 'u:\users\administrator\Downloads'  # The download location is local to the device.
    # There should be enough  space for the zip file and the unzipped contents.

# Create PowerShell session to target device
Set-Item -Path WSMan:\localhost\Client\TrustedHosts $deviceip
$S = New-PSSession -ComputerName $deviceIp -Credential Administrator
# Copy the ZIP package to the device
Copy-Item $zipfile -Destination $downloadfolder -ToSession $S

#Connect to the device and expand the archive
Enter-PSSession $S
Set-Location u:\users\administrator\Downloads
Expand-Archive .\PowerShell-7.4.2-win-arm64.zip

# Set up remoting to PowerShell 7
Set-Location .\PowerShell-7.4.2-win-arm64
# Be sure to use the -PowerShellHome parameter otherwise it tries to create a new
# endpoint with Windows PowerShell 5.1
.\Install-PowerShellRemoting.ps1 -PowerShellHome .

Saat menyiapkan PowerShell Remoting, Anda mendapatkan pesan kesalahan dan terputus dari perangkat. PowerShell harus memulai ulang WinRM. Sekarang Anda dapat menyambungkan ke titik akhir PowerShell 7 di perangkat.


# Be sure to use the -Configuration parameter. If you omit it, you connect to Windows PowerShell 5.1
Enter-PSSession -ComputerName $deviceIp -Credential Administrator -Configuration PowerShell.7.4.2

Menyebarkan di Windows 10 IoT Core

Windows 10 IoT Core menambahkan Windows PowerShell saat Anda menyertakan fitur IOT_POWERSHELL , yang dapat kami gunakan untuk menyebarkan PowerShell 7. Langkah-langkah yang ditentukan di atas untuk Windows 10 IoT Enterprise juga dapat diikuti untuk IoT Core.

Untuk menambahkan PowerShell terbaru dalam gambar pengiriman, gunakan perintah Import-PSCoreRelease untuk menyertakan paket di workarea dan menambahkan fitur OPENSRC_POWERSHELL ke gambar Anda.

Catatan

Untuk arsitektur ARM64, Windows PowerShell tidak ditambahkan saat Anda menyertakan IOT_POWERSHELL. Jadi penginstalan berbasis zip tidak berfungsi. Anda perlu menggunakan Import-PSCoreRelease perintah untuk menambahkannya dalam gambar.

Menyebarkan di Nano Server

Instruksi ini mengasumsikan bahwa Nano Server adalah OS "headless" yang memiliki versi PowerShell yang sudah berjalan di atasnya. Untuk informasi selengkapnya, lihat dokumentasi Nano Server Image Builder .

Biner PowerShell dapat disebarkan menggunakan dua metode berbeda.

  1. Offline - Pasang Nano Server VHD dan unzip konten file zip ke lokasi yang Anda pilih dalam gambar yang dipasang.
  2. Online - Transfer file zip melalui Sesi PowerShell dan unzip di lokasi yang Anda pilih.

Dalam kedua kasus, Anda memerlukan paket rilis ZIP Windows x64. Jalankan perintah dalam instans "Administrator" PowerShell.

Penyebaran Offline PowerShell

  1. Gunakan utilitas zip favorit Anda untuk membuka zip paket ke direktori dalam gambar Nano Server yang dipasang.
  2. Lepaskan gambar dan boot.
  3. Koneksi ke instans bawaan Windows PowerShell.
  4. Ikuti instruksi untuk membuat titik akhir jarak jauh menggunakan "teknik instans lain".

Penyebaran Online PowerShell

Sebarkan PowerShell ke Nano Server menggunakan langkah-langkah berikut.

# Replace the placeholder information for the following variables:
$ipaddr = '<Nano Server IP address>'
$credential = Get-Credential # <An Administrator account on the system>
$zipfile = 'PowerShell-7.4.2-win-x64.zip'
# Connect to the built-in instance of Windows PowerShell
$session = New-PSSession -ComputerName $ipaddr -Credential $credential
# Copy the file to the Nano Server instance
Copy-Item $zipfile c:\ -ToSession $session
# Enter the interactive remote session
Enter-PSSession $session
# Extract the ZIP file
Expand-Archive -Path C:\PowerShell-7.4.2-win-x64.zip -DestinationPath 'C:\Program Files\PowerShell 7'

Jika Anda ingin jarak jauh berbasis WSMan, ikuti instruksi untuk membuat titik akhir jarak jauh menggunakan "teknik instans lain".

PowerShell jarak jauh

PowerShell mendukung PowerShell Remoting Protocol (PSRP) melalui WSMan dan SSH. Untuk informasi selengkapnya, lihat:

Prasyarat berikut harus dipenuhi untuk mengaktifkan PowerShell jarak jauh melalui WSMan pada versi Windows yang lebih lama.

  • Instal Windows Management Framework (WMF) 5.1 (seperlunya). Untuk informasi selengkapnya tentang WMF, lihat Gambaran Umum WMF.
  • Instal Universal C Runtime pada versi Windows yang mendahului Windows 10. Ini tersedia melalui unduhan langsung atau Windows Update. Sistem yang sepenuhnya di-patch sudah menginstal paket ini.

Versi Windows yang didukung

Tabel berikut adalah daftar rilis PowerShell dan versi Windows yang didukungnya. Versi ini didukung hingga versi PowerShell mencapai akhir dukungan atau versi Windows mencapai akhir dukungan.

  • Ikon Didukung menunjukkan bahwa versi OS atau PowerShell masih didukung
  • Ikon Di Luar Dukungan menunjukkan versi PowerShell tidak lagi didukung pada versi OS tersebut
  • Ikon Dalam Pengujian menunjukkan bahwa kita belum selesai menguji PowerShell pada OS tersebut
  • Ikon Tidak Didukung menunjukkan bahwa versi OS atau PowerShell tidak didukung
  • Ketika versi OS dan versi PowerShell memiliki Didukung ikon, kombinasi tersebut didukung
Windows 7.2 (LTS-sebelumnya) 7.3 7.4 (LTS-current)
Didukung Windows Server 2016, 2019, atau 2022 Didukung Didukung Didukung
Didukung Windows Server Nano (1809 atau lebih tinggi) Didukung Didukung Didukung
Didukung Windows 11 Didukung Didukung Didukung
Didukung Windows 10 1607+ Didukung Didukung Didukung

Catatan

Dukungan untuk versi Windows tertentu ditentukan oleh kebijakan Siklus Hidup Dukungan Microsoft. Untuk informasi selengkapnya, lihat:

PowerShell didukung pada Windows untuk arsitektur prosesor berikut.

Windows 7.2 (LTS-current) 7.3 7.4 (LTS-current)
Windows Server 2016+ x64, x86 x64, x86 x64, x86
Windows Server Core 2016+ x64, x86 x64, x86 x64, x86
Nano Server Versi 1803+ x64 x64 x64
Klien Windows 11 x64, Arm64 x64, Arm64 x64, Arm64
Klien Windows 10 x64, x86, Arm64 x64, x86, Arm64 x64, x86, Arm64

Anda dapat memeriksa versi yang Anda gunakan dengan menjalankan winver.exe.

Dukungan penginstalan

Microsoft mendukung metode penginstalan dalam dokumen ini. Mungkin ada metode penginstalan pihak ketiga lainnya yang tersedia dari sumber lain. Meskipun alat dan metode tersebut mungkin berfungsi, Microsoft tidak dapat mendukung metode tersebut.