about_Windows_Powershell_5.1

Deskripsi singkat

Menjelaskan fitur baru yang disertakan dalam Windows PowerShell 5.1.

Deskripsi panjang

Windows PowerShell 5.1 mencakup fitur baru yang signifikan yang memperluas penggunaannya, meningkatkan kegunaannya, dan memungkinkan Anda mengontrol dan mengelola lingkungan berbasis Windows dengan lebih mudah dan komprehensif.

Windows PowerShell 5.1 kompatibel mundur. Cmdlet, penyedia, modul, snap-in, skrip, fungsi, dan profil yang dirancang untuk Windows PowerShell 4.0, Windows PowerShell 3.0, dan Windows PowerShell 2.0 umumnya berfungsi di Windows PowerShell 5.1 tanpa perubahan.

  • Cmdlet baru: pengguna dan grup lokal; Get-ComputerInfo
  • Peningkatan PowerShellGet termasuk memberlakukan modul yang ditandatangani, dan menginstal modul JEA
  • PackageManagement menambahkan dukungan untuk Kontainer, Penyiapan CBS, penyiapan berbasis EXE, paket CAB
  • Penyempurnaan penelusuran kesalahan untuk kelas DSC dan PowerShell
  • Peningkatan keamanan termasuk penerapan modul yang ditandatangani katalog yang berasal dari Pull Server dan saat menggunakan cmdlet PowerShellGet
  • Respons terhadap sejumlah permintaan dan masalah pengguna

Windows PowerShell 5.1 diinstal secara default pada Windows Server versi 2016 dan yang lebih tinggi dan klien Windows versi 10 dan yang lebih tinggi.

Untuk menginstal Windows PowerShell 5.1 pada versi Windows yang lebih lama, lihat Menginstal dan Mengonfigurasi WMF 5.1. Pastikan untuk membaca detail unduhan, dan memenuhi semua persyaratan sistem, sebelum Anda menginstal Windows Management Framework 5.1.

Anda juga dapat membaca tentang perubahan pada Windows PowerShell 5.1 di Apa yang Baru di Windows PowerShell.

Edisi PowerShell

Dimulai dengan versi 5.1, PowerShell tersedia dalam edisi berbeda yang menunjukkan berbagai set fitur dan kompatibilitas platform.

  • Edisi Desktop: Dibangun di .NET Framework dan menyediakan kompatibilitas dengan skrip dan modul yang menargetkan versi PowerShell yang berjalan pada edisi jejak penuh Windows seperti Server Core dan Windows Desktop.
  • Edisi Inti: Dibangun di .NET Core dan menyediakan kompatibilitas dengan skrip dan modul yang menargetkan versi PowerShell yang berjalan pada pengurangan edisi jejak Windows seperti Nano Server dan Windows IoT.

Pelajari selengkapnya tentang menggunakan PowerShell Editions

Cmdlet Katalog

Dua cmdlet baru telah ditambahkan dalam modul Microsoft.PowerShell.Security . Cmdlet ini menghasilkan dan memvalidasi file katalog Windows.

New-FileCatalog

New-FileCatalog membuat file katalog Windows untuk sekumpulan folder dan file. File katalog ini berisi hash untuk semua file dalam jalur yang ditentukan. Pengguna dapat mendistribusikan sekumpulan folder bersama dengan file katalog terkait yang mewakili folder tersebut. Informasi ini berguna untuk memvalidasi apakah ada perubahan yang telah dilakukan pada folder sejak waktu pembuatan katalog.

New-FileCatalog [-CatalogFilePath] <string> [[-Path] <string[]>]
 [-CatalogVersion <int>] [-WhatIf] [-Confirm] [<CommonParameters>]

Katalog versi 1 dan 2 didukung. Versi 1 menggunakan algoritma hashing SHA1 untuk membuat hash file; versi 2 menggunakan SHA256. Anda harus menggunakan katalog versi 2.

Untuk memverifikasi integritas file katalog (Pester.cat dalam contoh di atas), tanda tangani menggunakan cmdlet Set-AuthenticodeSignature .

Test-FileCatalog

Test-FileCatalog memvalidasi katalog yang mewakili sekumpulan folder.

Test-FileCatalog [-Detailed] [-FilesToSkip <String[]>]
 [-CatalogFilePath] <String> [[-Path] <String[]>]
 [-WhatIf] [-Confirm] [<CommonParameters>]

Cmdlet ini membandingkan semua hash file dan jalur relatifnya yang ditemukan dalam katalog dengan file pada disk. Jika mendeteksi ketidakcocokan antara hash file dan jalur, ia mengembalikan status sebagai ValidationFailed. Pengguna dapat mengambil semua informasi ini menggunakan parameter Terperinci . Ini juga menampilkan status penandatanganan katalog di properti Signature , yang setara dengan memanggil cmdlet Get-AuthenticodeSignature pada file katalog. Pengguna juga dapat melewati file apa pun selama validasi menggunakan parameter FilesToSkip .

Cache Analisis Modul

Dimulai dengan WMF 5.1, PowerShell menyediakan kontrol atas file yang digunakan untuk menyimpan data tentang modul, seperti perintah yang diekspornya.

Secara default, cache ini disimpan dalam file ${env:LOCALAPPDATA}\Microsoft\Windows\PowerShell\ModuleAnalysisCache. Cache biasanya dibaca saat startup saat mencari perintah dan ditulis pada utas latar belakang beberapa saat setelah modul diimpor.

Untuk mengubah lokasi default cache, atur $env:PSModuleAnalysisCachePath variabel lingkungan sebelum memulai PowerShell. Perubahan pada variabel lingkungan ini hanya memengaruhi proses anak. Nilai harus memberi nama jalur lengkap (termasuk nama file) bahwa PowerShell memiliki izin untuk membuat dan menulis file. Untuk menonaktifkan cache file, atur nilai ini ke lokasi yang tidak valid, misalnya:

$env:PSModuleAnalysisCachePath = 'nul'

Ini mengatur jalur ke perangkat yang tidak valid. Jika PowerShell tidak dapat menulis ke jalur, tidak ada kesalahan yang dikembalikan, tetapi Anda dapat melihat pelaporan kesalahan menggunakan pelacak:

Trace-Command -PSHost -Name Modules -Expression {
  Import-Module Microsoft.PowerShell.Management -Force
}

Saat menulis cache, PowerShell memeriksa modul yang tidak lagi ada untuk menghindari cache yang tidak perlu besar. Anda dapat menonaktifkan pemeriksaan menggunakan pengaturan berikut:

$env:PSDisableModuleAnalysisCacheCleanup = 1

Pengaturan variabel lingkungan ini berlaku segera dalam proses saat ini.

Menentukan versi modul

Di WMF 5.1, using module berperilaku sama seperti konstruksi terkait modul lainnya di PowerShell. Sebelumnya, Anda tidak memiliki cara untuk menentukan versi modul tertentu. Jika ada beberapa versi yang ada, ini mengakibatkan kesalahan.

Di WMF 5.1:

  • Anda dapat menggunakan Konstruktor ModuleSpecification (Hashtable). Tabel hash ini memiliki format yang sama dengan Get-Module -FullyQualifiedName.

    Contoh:using module @{ModuleName = 'PSReadLine'; RequiredVersion = '1.1'}

  • Jika ada beberapa versi modul, PowerShell menggunakan logika resolusi yang sama dengan Import-Module dan tidak mengembalikan kesalahan.

Penyempurnaan Pester

Di WMF 5.1, versi Pester yang dikirim dengan PowerShell telah diperbarui dari 3.3.5 menjadi 3.4.0. Anda dapat meninjau perubahan dalam versi 3.3.5 ke 3.4.0 dengan memeriksa CHANGELOG di repositori GitHub.

KATA KUNCI

Apa yang Baru di Windows PowerShell 5.1