Save-Help
Mengunduh dan menyimpan file bantuan terbaru ke direktori sistem file.
Sintaks
Save-Help
[-DestinationPath] <String[]>
[[-Module] <PSModuleInfo[]>]
[-FullyQualifiedModule <ModuleSpecification[]>]
[[-UICulture] <CultureInfo[]>]
[-Credential <PSCredential>]
[-UseDefaultCredentials]
[-Force]
[-Scope <UpdateHelpScope>]
[<CommonParameters>]
Save-Help
-LiteralPath <String[]>
[[-Module] <PSModuleInfo[]>]
[-FullyQualifiedModule <ModuleSpecification[]>]
[[-UICulture] <CultureInfo[]>]
[-Credential <PSCredential>]
[-UseDefaultCredentials]
[-Force]
[-Scope <UpdateHelpScope>]
[<CommonParameters>]
Deskripsi
cmdlet Save-Help
mengunduh file bantuan terbaru untuk modul PowerShell dan menyimpannya ke direktori yang Anda tentukan. Fitur ini memungkinkan Anda memperbarui file bantuan di komputer yang tidak memiliki akses ke internet, dan memudahkan untuk memperbarui file bantuan di beberapa komputer. Cmdlet ini diperkenalkan di Windows PowerShell 3.0.
Dimulai di Windows PowerShell 4.0, Anda dapat menggunakan Save-Help
untuk mengunduh file bantuan untuk modul yang diinstal di komputer jarak jauh. Anda juga dapat menyimpan objek PSModuleInfo menggunakan Export-Clixml
di komputer yang tidak memiliki akses internet, mengimpor objek di komputer yang memang memiliki akses internet, lalu menjalankan Save-Help
pada objek PSModuleInfo. Setelah Anda memiliki bantuan yang disimpan, Anda dapat menyalinnya ke komputer jarak jauh dan menginstalnya dengan menjalankan Update-Help
.
Proses ini dapat digunakan untuk menginstal bantuan pada komputer yang tidak memiliki akses jaringan apa pun.
Tanpa parameter, perintah Save-Help
mengunduh bantuan terbaru untuk semua modul dalam sesi dan untuk modul yang diinstal pada komputer di lokasi yang tercantum dalam variabel lingkungan PSModulePath. Tindakan ini melewati modul yang tidak mendukung Bantuan yang Dapat Diperbarui tanpa peringatan.
cmdlet Save-Help
memeriksa versi file bantuan apa pun di folder tujuan. Jika file bantuan yang lebih baru tersedia, cmdlet ini mengunduh file bantuan terbaru dari internet, lalu menyimpannya di folder. Cmdlet Save-Help
berfungsi seperti cmdlet Update-Help
, kecuali bahwa cmdlet menyimpan konten yang diunduh, alih-alih mengekstrak file bantuan dan menginstalnya di komputer.
Bantuan yang disimpan untuk setiap modul terdiri dari satu file informasi bantuan (HELPInfo XML) dan arsip kabinet atau ZIP (.cab
atau .zip
) untuk file bantuan dalam setiap bahasa. Di Windows, perintah mengunduh file kabinet. Di Linux dan macOS, perintah mengunduh file ZIP.
Untuk menyimpan file bantuan untuk modul di folder penginstalan PowerShell ($PSHOME\Modules
), mulai PowerShell dengan menggunakan opsi Jalankan sebagai administrator. Anda harus menjadi anggota grup Administrator di komputer untuk mengunduh file bantuan untuk modul ini.
Untuk menginstal file bantuan tersimpan, jalankan Update-Help
dengan parameter SourcePath untuk menentukan folder yang berisi file Bantuan yang disimpan.
Update-Help
mengekstrak file bantuan dari arsip dan menginstalnya di lokasi yang sesuai.
Contoh
Contoh 1: Simpan bantuan untuk modul DhcpServer
Contoh ini menunjukkan tiga cara berbeda untuk menggunakan Save-Help
untuk menyimpan bantuan untuk modul DhcpServer dari komputer klien yang terhubung ke internet, tanpa menginstal modul DhcpServer atau peran Server DHCP di komputer lokal.
# Option 1:
# 1. Run Invoke-Command to get the PSModuleInfo object for the DhcpServer module,
# 2. Save-Help on the PSModuleInfo object to save the help files to a folder on
# the local computer.
$mod = Invoke-Command -ComputerName RemoteServer -ScriptBlock {
Get-Module -Name DhcpServer -ListAvailable
}
Save-Help -Module $mod -DestinationPath C:\SavedHelp
# Option 2:
# 1. Open a PSSession to the remote computer that's running the DhcpServer module
# 2. Get the PSModuleInfo object from the remote computer
# 3. Save-Help on the PSModuleInfo object
$session = New-PSSession -ComputerName "RemoteServer"
$mod = Get-Module -PSSession $session -Name "DhcpServer" -ListAvailable
Save-Help -Module $mod -DestinationPath C:\SavedHelp
# Option 3:
# 1. Open a CimSession to the remote computer that's running the DhcpServer module
# 2. Get the PSModuleInfo object from the remote computer
# 3. Save-Help on the PSModuleInfo object
$cimsession = New-CimSession -ComputerName "RemoteServer"
$mod = Get-Module -CimSession $cimsession -Name "DhcpServer" -ListAvailable
Save-Help -Module $mod -DestinationPath "C:\SavedHelp"
Contoh 2: Instal bantuan untuk modul DhcpServer
Contoh ini memperlihatkan cara menginstal bantuan untuk komputer yang tidak tersambung ke jaringan. Untuk contoh ini, komputer pertama tidak tersambung ke jaringan yang dapat diakses. File harus disalin ke dalamnya menggunakan media yang dapat dilepas. Komputer kedua terhubung ke internet dan dapat mengunduh file bantuan.
# On the first computer, get the PSModuleInfo object for the module and save it to
# removable media.
Get-Module -Name "DhcpServer" -ListAvailable |
Export-CliXml -Path E:\UsbFlashDrive\DhcpModule.xml
# Move the removable media to a computer that has internet access, and then import the
# PSModuleInfo object. Run Save-Help on the imported PSModuleInfo object and save the help
# files to the removable media.
$moduleInfo = Import-CliXml E:\UsbFlashDrive\DhcpModule.xml
Save-Help -Module $moduleInfo -DestinationPath E:\UsbFlashDrive\SavedHelp
# Finally, move the removable media back to the first computer and install the help.
Update-Help -Module DhcpServer -SourcePath E:\UsbFlashDrive\SavedHelp
Contoh 3: Menyimpan bantuan untuk semua modul
Perintah ini mengunduh file bantuan terbaru untuk semua modul di komputer lokal. Ini menyimpan file bantuan di folder \\Server01\Fileshare01
.
Save-Help -DestinationPath \\Server01\FileShare01
Contoh 4: Menyimpan bantuan untuk modul di komputer
Perintah ini mengunduh file bantuan terbaru untuk modul ServerManager, lalu menyimpannya di folder \\Server01\Fileshare01
.
$saveHelpSplat = @{
Module = 'ServerManager'
DestinationPath = '\\Server01\FileShare01'
Credential = 'Domain01/Admin01'
}
Save-Help @saveHelpSplat
Saat modul diinstal di komputer, Anda dapat mengetikkan nama modul sebagai nilai parameter Modul, bahkan jika modul tidak diimpor ke sesi saat ini.
Perintah menggunakan parameter Kredensial untuk memberikan kredensial pengguna yang memiliki izin untuk menulis ke berbagi file.
Contoh 5: Menyimpan bantuan untuk modul di komputer lain
Perintah ini mengunduh file bantuan terbaru untuk modul CustomSQL dan menyimpannya di folder \\Server01\Fileshare01
.
Invoke-Command -ComputerName Server02 { Get-Module -Name CustomSQL -ListAvailable } |
Save-Help -DestinationPath \\Server01\FileShare01 -Credential Domain01\Admin01
Karena modul CustomSQL tidak diinstal di komputer, urutan menyertakan perintah Invoke-Command
yang mendapatkan objek modul untuk modul CustomSQL dari komputer Server02 lalu menyalurkan objek modul ke cmdlet Save-Help
.
Saat modul tidak diinstal di komputer, Save-Help
memerlukan objek modul, yang mencakup informasi tentang lokasi file bantuan terbaru.
Contoh 6: Menyimpan bantuan untuk modul dalam beberapa bahasa
Perintah ini menyimpan bantuan untuk modul PowerShell inti dalam empat budaya UI yang berbeda. Paket bahasa untuk lokal ini tidak harus diinstal pada komputer.
$saveHelpSplat = @{
Module = 'Microsoft.PowerShell*'
UICulture = 'de-DE', 'en-US', 'fr-FR', 'ja-JP'
DestinationPath = "D:\Help"
}
Save-Help @saveHelpSplat
Save-Help
dapat mengunduh file bantuan untuk modul dalam budaya UI yang berbeda hanya ketika pemilik modul membuat file yang diterjemahkan tersedia di internet.
Contoh 7: Menyimpan bantuan lebih dari satu kali setiap hari
Perintah ini menyimpan bantuan untuk semua modul yang diinstal pada komputer. Perintah menentukan parameter Force untuk mengambil alih aturan yang mencegah cmdlet Save-Help
mengunduh bantuan lebih dari sekali dalam setiap periode 24 jam.
Save-Help -Force -DestinationPath \\Server3\AdminShare\Help
Parameter Force juga mengambil alih pembatasan 1 GB dan menghindari pemeriksaan versi. Oleh karena itu, Anda dapat mengunduh file meskipun versinya tidak lebih baru dari versi di folder tujuan.
Perintah menggunakan cmdlet Save-Help
untuk mengunduh dan menyimpan file bantuan ke folder yang ditentukan.
Parameter Force diperlukan ketika Anda harus menjalankan perintah Save-Help
lebih dari satu kali setiap hari.
Parameter
-Credential
Menentukan kredensial pengguna. Cmdlet ini menjalankan perintah dengan menggunakan kredensial pengguna yang memiliki izin untuk mengakses lokasi sistem file yang ditentukan oleh parameter DestinationPath. Parameter ini hanya valid ketika parameter DestinationPath atau LiteralPath digunakan dalam perintah.
Parameter ini memungkinkan Anda menjalankan perintah Save-Help
yang menggunakan parameter DestinationPath pada komputer jarak jauh. Dengan memberikan kredensial eksplisit, Anda dapat menjalankan perintah di komputer jarak jauh dan mengakses berbagi file di komputer ketiga tanpa mengalami kesalahan akses yang ditolak atau menggunakan autentikasi CredSSP untuk mendelegasikan kredensial.
Ketik nama pengguna, seperti User01 atau Domain01\User01, atau masukkan objek PSCredential yang dihasilkan oleh cmdlet Get-Credential
. Jika Anda mengetikkan nama pengguna, Anda akan diminta untuk memasukkan kata sandi.
Kredensial disimpan dalam objek PSCredential dan kata sandi disimpan sebagai SecureString.
Nota
Untuk informasi selengkapnya tentang perlindungan data SecureString, lihat Seberapa aman SecureString?.
Jenis: | PSCredential |
Position: | Named |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | False |
-DestinationPath
Menentukan jalur folder tempat file bantuan disimpan. Jangan tentukan nama file atau ekstensi nama file.
Jenis: | String[] |
Alias: | Path |
Position: | 0 |
Nilai default: | None |
Diperlukan: | True |
Terima input alur: | False |
Terima karakter wildcard: | False |
-Force
Menunjukkan bahwa cmdlet ini tidak mengikuti batasan sekali per hari, melewati pemeriksaan versi, dan mengunduh file yang melebihi batas 1 GB.
Tanpa parameter ini, hanya satu perintah Save-Help
untuk setiap modul yang diizinkan dalam setiap periode 24 jam, unduhan dibatasi hingga 1 GB konten yang tidak dikompresi per modul, dan file bantuan untuk modul hanya diinstal saat lebih baru dari file di komputer.
Batas sekali per hari melindungi server yang menghosting file bantuan, dan membuatnya praktis bagi Anda untuk menambahkan perintah Save-Help
ke profil PowerShell Anda.
Untuk menyimpan bantuan untuk modul dalam beberapa budaya UI tanpa parameter Force, sertakan semua budaya UI dalam perintah yang sama, seperti: Save-Help -Module PSScheduledJobs -UICulture en-US, fr-FR, pt-BR
Jenis: | SwitchParameter |
Position: | Named |
Nilai default: | False |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | False |
-FullyQualifiedModule
Nilainya dapat berupa nama modul, spesifikasi modul lengkap, atau jalur ke file modul.
Ketika nilai adalah jalur, jalur dapat sepenuhnya memenuhi syarat atau relatif. Jalur relatif diselesaikan relatif terhadap skrip yang berisi pernyataan penggunaan.
Saat nilainya adalah spesifikasi nama atau modul, PowerShell mencari PSModulePath untuk modul yang ditentukan.
Spesifikasi modul adalah hashtable yang memiliki kunci berikut.
-
ModuleName
- Diperlukan Menentukan nama modul. -
GUID
- Opsional Menentukan GUID modul. - Ini juga Diperlukan untuk menentukan setidaknya salah satu dari tiga kunci di bawah ini.
-
ModuleVersion
- Menentukan versi minimum modul yang dapat diterima. -
MaximumVersion
- Menentukan versi maksimum modul yang dapat diterima. -
RequiredVersion
- Menentukan versi modul yang tepat dan diperlukan. Ini tidak dapat digunakan dengan kunci Versi lainnya.
-
Anda tidak dapat menentukan parameter FullyQualifiedModule dalam perintah yang sama dengan parameter Modul. dua parameter saling eksklusif.
Jenis: | ModuleSpecification[] |
Position: | Named |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | True |
Terima karakter wildcard: | False |
-LiteralPath
Menentukan jalur folder tujuan. Tidak seperti nilai parameter DestinationPath, nilai parameter LiteralPath digunakan persis seperti yang dititik. Tidak ada karakter yang ditafsirkan sebagai karakter kartubebas. Jika jalur menyertakan karakter escape, sertakan dalam tanda kutip tunggal. Tanda kutip tunggal memberi tahu PowerShell untuk tidak menginterpretasikan karakter apa pun sebagai urutan escape.
Jenis: | String[] |
Alias: | PSPath, LP |
Position: | Named |
Nilai default: | None |
Diperlukan: | True |
Terima input alur: | False |
Terima karakter wildcard: | False |
-Module
Menentukan modul yang cmdlet ini mengunduh bantuan. Masukkan satu atau beberapa nama modul atau patter nama dalam daftar yang dipisahkan koma atau dalam file yang memiliki satu nama modul pada setiap baris. Karakter kartubebas diizinkan. Anda juga dapat menyalurkan objek modul dari cmdlet Get-Module
ke Save-Help
.
Secara default, Save-Help
mengunduh bantuan untuk semua modul yang mendukung Bantuan yang Dapat Diperbarui dan diinstal pada komputer lokal di lokasi yang tercantum dalam variabel lingkungan PSModulePath.
Untuk menyimpan bantuan untuk modul yang tidak terinstal di komputer, jalankan perintah Get-Module
di komputer jarak jauh. Kemudian pipa objek modul yang dihasilkan ke cmdlet Save-Help
atau kirimkan objek modul sebagai nilai modul atau parameter InputObject.
Jika modul yang Anda tentukan diinstal di komputer, Anda dapat memasukkan nama modul atau objek modul. Jika modul tidak diinstal di komputer, Anda harus memasukkan objek modul, seperti yang dikembalikan oleh cmdlet Get-Module
.
Parameter Modul cmdlet Save-Help
tidak menerima jalur lengkap file modul atau file manifes modul. Untuk menyimpan bantuan untuk modul yang tidak berada di lokasi PSModulePath, impor modul ke sesi saat ini sebelum Anda menjalankan perintah Save-Help
.
Nilai "*" (semua) mencoba memperbarui bantuan untuk semua modul yang diinstal di komputer. Ini termasuk modul yang tidak mendukung Bantuan yang Dapat Diperbarui. Nilai ini mungkin menghasilkan kesalahan ketika perintah menemukan modul yang tidak mendukung Bantuan yang Dapat Diperbarui.
Jenis: | PSModuleInfo[] |
Alias: | Name |
Position: | 1 |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | True |
Terima karakter wildcard: | True |
-Scope
Parameter ini tidak melakukan apa pun dalam cmdlet ini.
Jenis: | UpdateHelpScope |
Position: | Named |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | True |
Terima karakter wildcard: | False |
-UICulture
Menentukan nilai budaya UI tempat cmdlet ini mendapatkan file bantuan yang diperbarui. Masukkan satu atau beberapa kode bahasa, seperti es-ES
, variabel yang berisi objek budaya, atau perintah yang mendapatkan objek budaya, seperti perintah Get-Culture
atau Get-UICulture
. Karakter pengganti tidak diizinkan.
Secara default, Save-Help
mendapatkan file bantuan dalam budaya UI yang ditetapkan untuk sistem operasi atau budaya fallback-nya. Jika Anda menentukan parameter UICulture, Save-Help
hanya mencari bantuan untuk bahasa yang ditentukan.
Dimulai di PowerShell 7.4, Anda dapat menggunakan kode bahasa parsial, seperti en
untuk mengunduh bantuan dalam bahasa Inggris untuk wilayah mana pun.
Jenis: | CultureInfo[] |
Position: | 2 |
Nilai default: | Current UI culture |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | False |
-UseDefaultCredentials
Menunjukkan bahwa cmdlet ini menjalankan perintah, termasuk unduhan web, dengan kredensial pengguna saat ini. Secara default, perintah berjalan tanpa kredensial eksplisit.
Parameter ini hanya efektif ketika unduhan web menggunakan autentikasi berbasis NTLM, negosiasi, atau Kerberos.
Jenis: | SwitchParameter |
Position: | Named |
Nilai default: | False |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | False |
Input
Anda dapat menyalurkan objek modul ke cmdlet ini.
Output
None
Cmdlet ini tidak mengembalikan output.
Catatan
- Untuk menyimpan bantuan untuk modul di folder $PSHOME\Modules, mulai PowerShell dengan menggunakan opsi Jalankan sebagai administrator. Hanya anggota grup Administrator di komputer yang dapat mengunduh bantuan untuk modul di folder $PSHOME\Modules.
- Bantuan yang disimpan untuk setiap modul terdiri dari satu file informasi bantuan (HELPInfo XML) dan satu file kabinet (.cab) untuk file bantuan setiap budaya UI. Anda tidak perlu mengekstrak file bantuan dari file kabinet. cmdlet
Update-Help
mengekstrak file bantuan, memvalidasi XML, lalu menginstal file bantuan dan file informasi bantuan dalam subfolder khusus bahasa folder modul. - Cmdlet
Save-Help
dapat menyimpan bantuan untuk modul yang tidak diinstal di komputer. Namun, karena file bantuan diinstal di folder modul, cmdletUpdate-Help
dapat menginstal file bantuan yang diperbarui hanya untuk modul yang diinstal di komputer. - Jika
Save-Help
tidak dapat menemukan file bantuan yang diperbarui untuk modul, atau tidak dapat menemukan file bantuan yang diperbarui dalam bahasa yang ditentukan, file tersebut berlanjut secara diam-diam tanpa menampilkan pesan kesalahan. Untuk melihat file mana yang disimpan oleh perintah, tentukan parameter Verbose. - Modul adalah unit terkecil dari bantuan yang dapat diperbarui. Anda tidak dapat menyimpan bantuan untuk cmdlet tertentu, hanya untuk semua cmdlet dalam modul. Untuk menemukan modul yang berisi cmdlet tertentu, gunakan properti ModuleName bersama dengan cmdlet
Get-Command
, misalnya,(Get-Command \<cmdlet-name\>).ModuleName
-
Save-Help
mendukung semua modul dan snap-in Inti PowerShell. Ini tidak mendukung snap-in lainnya. - Cmdlet
Update-Help
danSave-Help
menggunakan port berikut untuk mengunduh file bantuan: Port 80 untuk HTTP dan port 443 untuk HTTPS. - Cmdlet
Update-Help
danSave-Help
tidak didukung pada Windows Preinstallation Environment (Windows PE).