Bab 2 - Sistem Bantuan
Dua kelompok profesional TI diberikan tes tertulis tanpa akses ke komputer untuk menentukan tingkat keterampilan mereka dengan PowerShell. Pemula PowerShell ditempatkan dalam satu kelompok dan para ahli di kelompok lain. Berdasarkan hasil tes, tampaknya tidak ada banyak perbedaan dalam tingkat keterampilan antara kedua kelompok. Kedua kelompok diberikan tes kedua yang mirip dengan yang pertama. Kali ini mereka diberi akses ke komputer dengan PowerShell yang tidak memiliki akses ke internet. Hasil tes kedua menunjukkan perbedaan besar dalam tingkat keterampilan antara kedua kelompok. Para ahli tidak selalu tahu jawabannya, tetapi mereka tahu cara mencari tahu jawabannya.
Apa perbedaan hasil pengujian pertama dan kedua antara kedua grup ini?
Perbedaan yang diamati dalam dua tes ini adalah karena para ahli tidak menghafal cara menggunakan ribuan perintah di PowerShell. Mereka mempelajari cara menggunakan sistem bantuan dalam PowerShell dengan sangat baik. Ini memungkinkan mereka untuk menemukan perintah yang diperlukan ketika diperlukan dan cara menggunakan perintah tersebut setelah mereka menemukannya.
Aku pernah mendengar Jeffrey Snover, penemu PowerShell, menceritakan kisah serupa beberapa kali.
Menguasai sistem bantuan adalah kunci untuk berhasil dengan PowerShell.
Kemampuan Ditemukan
Perintah yang dikompilasi di PowerShell disebut cmdlet. Cmdlet diucapkan "command-let" (bukan CMD-let). Nama cmdlet memiliki bentuk perintah "Verb-Noun" tunggal untuk membuatnya mudah ditemukan. Misalnya, cmdlet untuk menentukan proses apa yang berjalan adalah Get-Process
dan cmdlet untuk mengambil daftar layanan dan statusnya adalah Get-Service
. Ada jenis perintah lain di PowerShell seperti alias dan fungsi yang akan dibahas nanti dalam buku ini. Istilah perintah PowerShell adalah istilah generik yang sering digunakan untuk merujuk ke semua jenis perintah di PowerShell, terlepas dari apakah itu cmdlet, fungsi, atau alias atau tidak.
Tiga Cmdlet Inti di PowerShell
Get-Command
Get-Help
Get-Member
(tercakup dalam bab 3)
Satu pertanyaan yang sering saya tanyakan adalah bagaimana Anda mengetahui apa perintah di PowerShell? Keduanya Get-Command
dan Get-Help
dapat digunakan untuk menentukan perintah.
Get-Help
Get-Help
adalah perintah multiguna. Get-Help
membantu Anda mempelajari cara menggunakan perintah setelah Menemukannya. Get-Help
juga dapat digunakan untuk membantu menemukan perintah, tetapi dengan cara yang berbeda dan lebih tidak langsung jika dibandingkan Get-Command
dengan .
Ketika Get-Help
digunakan untuk menemukan perintah, pertama-tama mencari kecocokan kartubebas nama perintah berdasarkan input yang disediakan. Jika tidak menemukan kecocokan, ia mencari topik bantuan itu sendiri, dan jika tidak ada kecocokan yang ditemukan, kesalahan akan dikembalikan. Bertentangan dengan kepercayaan populer, Get-Help
dapat digunakan untuk menemukan perintah yang tidak memiliki topik bantuan.
Hal pertama yang perlu Anda ketahui tentang sistem bantuan di PowerShell adalah cara menggunakan Get-Help
cmdlet. Perintah berikut digunakan untuk menampilkan topik bantuan untuk Get-Help
.
Get-Help -Name Get-Help
Do you want to run Update-Help?
The Update-Help cmdlet downloads the most current Help files for Windows PowerShell
modules, and installs them on your computer. For more information about the Update-Help
cmdlet, see http://go.microsoft.com/fwlink/?LinkId=210614.
[Y] Yes [N] No [S] Suspend [?] Help (default is "Y"):
Dimulai dengan PowerShell versi 3, bantuan PowerShell tidak dikirim dengan sistem operasi. Pertama kali Get-Help
dijalankan untuk perintah, pesan sebelumnya ditampilkan. help
Jika fungsi atau man
alias digunakan alih-alih Get-Help
cmdlet, Anda tidak menerima perintah ini.
Menjawab ya dengan menekan Y menjalankan Update-Help
cmdlet, yang memerlukan akses internet secara default. Y
dapat ditentukan dalam huruf besar atau kecil.
Setelah bantuan diunduh dan pembaruan selesai, topik bantuan dikembalikan untuk perintah yang ditentukan:
Get-Help -Name Get-Help
Luangkan waktu sejenak untuk menjalankan contoh tersebut di komputer Anda, tinjau output, dan perhatikan bagaimana informasi dikelompokkan:
- NAMA
- SINOPSIS
- SINTAKS
- DESKRIPSI
- Tautan terkait
- REMARKS
Seperti yang Anda lihat, topik bantuan dapat berisi sejumlah besar informasi dan ini bahkan bukan seluruh topik bantuan.
Meskipun tidak spesifik untuk PowerShell, parameter adalah cara untuk memberikan input ke perintah. Get-Help
memiliki banyak parameter yang dapat ditentukan untuk mengembalikan seluruh topik bantuan atau subsetnya.
Bagian sintaks dari topik bantuan yang diperlihatkan dalam kumpulan hasil sebelumnya mencantumkan semua parameter untuk Get-Help
. Pada pandangan pertama, tampaknya parameter yang sama tercantum enam kali berbeda. Masing-masing blok yang berbeda di bagian sintaksis adalah set parameter. Ini berarti Get-Help
cmdlet memiliki enam set parameter yang berbeda. Jika Anda melihat lebih dekat, Anda akan melihat bahwa setidaknya satu parameter berbeda di setiap set parameter.
Set parameter saling eksklusif. Setelah parameter unik yang hanya ada di salah satu set parameter yang digunakan, hanya parameter yang terkandung dalam kumpulan parameter yang dapat digunakan. Misalnya, parameter Lengkap dan Terperinci tidak dapat ditentukan pada saat yang sama karena berada dalam set parameter yang berbeda.
Masing-masing parameter berikut berada dalam set parameter yang berbeda:
- Penuh
- Terperinci
- Contoh
- Online
- Parameter
- ShowWindow
Semua sintaksis kriptik seperti kurung siku dan sudut di bagian sintaks berarti sesuatu tetapi akan dibahas dalam Lampiran A dari buku ini. Meskipun penting, mempelajari sintaksis kripto seringkali sulit dipertahankan bagi seseorang yang baru menggunakan PowerShell dan mungkin tidak menggunakannya setiap hari.
Untuk informasi selengkapnya untuk lebih memahami sintaksis kriptik, lihat Lampiran A.
Untuk pemula, ada cara yang lebih mudah untuk mengetahui informasi yang sama kecuali dalam bahasa biasa.
Ketika parameter Get-Help
Lengkap ditentukan, seluruh topik bantuan dikembalikan.
Get-Help -Name Get-Help -Full
Luangkan waktu sejenak untuk menjalankan contoh tersebut di komputer Anda, tinjau output, dan perhatikan bagaimana informasi dikelompokkan:
- NAMA
- SINOPSIS
- SINTAKS
- DESKRIPSI
- PARAMETERS
- INPUTS
- OUTPUTS
- CATATAN
- CONTOH
- Tautan terkait
Perhatikan bahwa menggunakan parameter Lengkap mengembalikan beberapa bagian tambahan, salah satunya adalah bagian PARAMETERS yang menyediakan lebih banyak informasi daripada bagian SINTAKSis kriptik.
Parameter Lengkap adalah parameter pengalihan. Parameter yang tidak memerlukan nilai disebut parameter pengalihan. Ketika parameter pengalihan ditentukan, nilainya benar dan jika tidak, nilainya salah.
Jika Anda telah mengerjakan bab ini di konsol PowerShell, Anda melihat bahwa perintah sebelumnya untuk menampilkan topik bantuan lengkap untuk Get-Help
terbang dengan layar tanpa memberi Anda kesempatan untuk membacanya. Ada cara yang lebih baik.
Help
adalah fungsi yang menyalurkan ke fungsi bernama more
, yang merupakan pembungkus Get-Help
untuk more.com
file yang dapat dieksekusi di Windows. Di konsol PowerShell, help
berikan satu halaman bantuan pada satu waktu. Dalam ISE, ia bekerja dengan cara yang sama seperti Get-Help
. Rekomendasi saya adalah menggunakan fungsi alih-alih help
Get-Help
cmdlet karena memberikan pengalaman yang lebih baik dan kurang mengetik.
Namun, mengetik lebih sedikit bukanlah hal yang baik. Jika Anda akan menyimpan perintah sebagai skrip atau membagikannya dengan orang lain, pastikan untuk menggunakan cmdlet lengkap dan nama parameter. Nama lengkapnya mendokumen sendiri, yang membuatnya lebih mudah dipahami. Pikirkan tentang orang berikutnya yang harus membaca dan memahami perintah Anda. Bisa jadi kau. Rekan kerja dan masa depan anda akan berterima kasih.
Coba jalankan perintah berikut di konsol PowerShell di komputer lingkungan lab Windows 10 Anda.
Get-Help -Name Get-Help -Full
help -Name Get-Help -Full
help Get-Help -Full
Apakah Anda melihat perbedaan dalam output dari perintah yang tercantum sebelumnya saat Anda menjalankannya di komputer lingkungan lab Windows 10 Anda?
Tidak ada perbedaan selain dua opsi terakhir yang mengembalikan hasil satu halaman pada satu waktu.
Bilah spasi digunakan untuk menampilkan halaman konten berikutnya saat menggunakan Help
fungsi dan Ctrl+C membatalkan perintah yang berjalan di konsol PowerShell.
Contoh pertama menggunakan Get-Help
cmdlet, yang kedua menggunakan Help
fungsi, dan yang ketiga menghilangkan parameter Nama saat menggunakan Help
fungsi . Nama adalah parameter posisional dan sedang digunakan secara posisi dalam contoh tersebut. Ini berarti nilai dapat ditentukan tanpa menentukan nama parameter, selama nilai itu sendiri ditentukan dalam posisi yang benar. Bagaimana cara mengetahui posisi apa untuk menentukan nilainya? Dengan membaca bantuan seperti yang ditunjukkan dalam contoh berikut.
help Get-Help -Parameter Name
-Name <String>
Gets help about the specified command or concept. Enter the name of a cmdlet, function,
provider, script, or workflow, such as Get-Member, a conceptual article name, such as
about_Objects, or an alias, such as ls. Wildcard characters are permitted in cmdlet and
provider names, but you can't use wildcard characters to find the names of function help and
script help articles.
To get help for a script that isn't located in a path that's listed in the $env:Path
environment variable, type the script's path and file name.
If you enter the exact name of a help article, Get-Help displays the article contents.
If you enter a word or word pattern that appears in several help article titles, Get-Help
displays a list of the matching titles.
If you enter a word that doesn't match any help article titles, Get-Help displays a list of
articles that include that word in their contents.
The names of conceptual articles, such as about_Objects, must be entered in English, even in
non-English versions of PowerShell.
Required? false
Position? 0
Default value None
Accept pipeline input? True (ByPropertyName)
Accept wildcard characters? true
Perhatikan bahwa dalam contoh sebelumnya, parameter Parameter digunakan dengan fungsi Bantuan untuk hanya mengembalikan informasi dari topik bantuan untuk parameter Nama . Ini jauh lebih ringkas daripada mencoba menyaring secara manual apa yang kadang-kadang tampak seperti seratus topik bantuan halaman.
Berdasarkan hasil tersebut , Anda dapat melihat bahwa parameter Nama berposisi dan harus ditentukan dalam posisi nol (posisi pertama) saat digunakan secara posisi. Urutan yang ditentukan parameter tidak masalah jika nama parameter ditentukan.
Satu informasi penting lainnya adalah bahwa parameter Nama mengharapkan jenis data untuk nilainya menjadi string tunggal, yang ditandai dengan <String>
. Jika menerima beberapa string, jenis data akan dicantumkan sebagai <String[]>
.
Terkadang Anda tidak ingin menampilkan seluruh topik bantuan untuk perintah. Ada sejumlah parameter lain selain Penuh yang dapat ditentukan dengan Get-Help
atau Help
. Coba jalankan perintah berikut di komputer lingkungan lab Windows 10 Anda:
Get-Help -Name Get-Command -Full
Get-Help -Name Get-Command -Detailed
Get-Help -Name Get-Command -Examples
Get-Help -Name Get-Command -Online
Get-Help -Name Get-Command -Parameter Noun
Get-Help -Name Get-Command -ShowWindow
Saya biasanya menggunakan help <command name>
dengan parameter Lengkap atau Online . Jika saya hanya tertarik pada contoh, saya akan menggunakan parameter Contoh dan jika saya hanya tertarik pada parameter tertentu, saya akan menggunakan parameter Parameter . Parameter ShowWindow membuka topik bantuan di jendela terpisah yang dapat dicari yang dapat ditempatkan pada monitor yang berbeda jika Anda memiliki beberapa monitor. Saya telah menghindari parameter ShowWindow karena ada bug yang diketahui di mana tidak menampilkan seluruh topik bantuan.
Jika Anda ingin bantuan di jendela terpisah, rekomendasi saya adalah menggunakan parameter Online atau menggunakan parameter Lengkap dan menyalurkan hasilnya ke Out-GridView
, seperti yang ditunjukkan dalam contoh berikut.
help Get-Command -Full | Out-GridView
Out-GridView
Cmdlet dan parameter ShowWindow cmdlet Get-Help
memerlukan sistem operasi dengan GUI (Antarmuka Pengguna Grafis). Mereka akan menghasilkan pesan kesalahan jika Anda mencoba menggunakan salah satunya di Windows Server yang telah diinstal menggunakan opsi penginstalan inti server (tanpa GUI).
Untuk menggunakan Get-Help
untuk menemukan perintah, gunakan karakter kartubebas tanda bintang (*
) dengan parameter Nama . Tentukan istilah yang Anda cari perintahnya sebagai nilai untuk parameter Nama seperti yang diperlihatkan dalam contoh berikut.
help *process*
Name Category Module Synopsis
---- -------- ------ --------
Enter-PSHostProcess Cmdlet Microsoft.PowerShell.Core Connects to and ...
Exit-PSHostProcess Cmdlet Microsoft.PowerShell.Core Closes an intera...
Get-PSHostProcessInfo Cmdlet Microsoft.PowerShell.Core
Debug-Process Cmdlet Microsoft.PowerShell.M... Debugs one or mo...
Get-Process Cmdlet Microsoft.PowerShell.M... Gets the process...
Start-Process Cmdlet Microsoft.PowerShell.M... Starts one or mo...
Stop-Process Cmdlet Microsoft.PowerShell.M... Stops one or mor...
Wait-Process Cmdlet Microsoft.PowerShell.M... Waits for the pr...
Get-AppvVirtualProcess Function AppvClient ...
Start-AppvVirtualProcess Function AppvClient ...
Dalam contoh sebelumnya, *
karakter kartubebas tidak diperlukan dan menghilangkannya menghasilkan hasil yang sama. Get-Help
secara otomatis menambahkan karakter kartubebas di belakang layar.
help process
Perintah sebelumnya menghasilkan hasil yang sama seperti menentukan *
karakter kartubebas pada setiap akhir proses.
Saya lebih suka menambahkannya karena itu adalah opsi yang selalu bekerja secara konsisten. Jika tidak, mereka diperlukan dalam skenario tertentu dan bukan yang lain. Segera setelah Anda menambahkan karakter kartubebas di tengah nilai, karakter tersebut tidak lagi ditambahkan secara otomatis di belakang layar ke nilai yang Anda tentukan.
help pr*cess
Tidak ada hasil yang dikembalikan oleh perintah tersebut *
kecuali karakter kartubebas ditambahkan ke awal, akhir, atau awal dan akhir .pr*cess
Jika nilai yang Anda tentukan dimulai dengan tanda hubung, maka kesalahan dihasilkan karena PowerShell menafsirkannya sebagai nama parameter dan tidak ada nama parameter tersebut Get-Help
untuk cmdlet.
help -process
Jika yang Anda coba cari adalah perintah yang diakhir dengan -process
, Anda hanya perlu menambahkan *
karakter kartubebas ke awal nilai.
help *-process
Saat mencari perintah PowerShell dengan Get-Help
, Anda ingin menjadi sedikit lebih samar alih-alih terlalu spesifik dengan apa yang Anda cari.
Mencari process
perintah yang ditemukan sebelumnya hanya yang terkandung process
dalam nama perintah dan hanya mengembalikan hasil tersebut. Ketika Get-Help
digunakan untuk mencari processes
, itu tidak menemukan kecocokan untuk nama perintah, sehingga melakukan pencarian setiap topik bantuan di PowerShell pada sistem Anda dan mengembalikan kecocokan apa pun yang ditemukannya. Ini menyebabkannya mengembalikan sejumlah besar hasil.
Get-Help processes
Name Category Module Synopsis
---- -------- ------ --------
Disconnect-PSSession Cmdlet Microsoft.PowerShell.Core Disconnects from...
Enter-PSHostProcess Cmdlet Microsoft.PowerShell.Core Connects to and ...
ForEach-Object Cmdlet Microsoft.PowerShell.Core Performs an oper...
Get-PSSessionConfiguration Cmdlet Microsoft.PowerShell.Core Gets the registe...
New-PSTransportOption Cmdlet Microsoft.PowerShell.Core Creates an objec...
Out-Host Cmdlet Microsoft.PowerShell.Core Sends output to ...
Where-Object Cmdlet Microsoft.PowerShell.Core Selects objects ...
Clear-Variable Cmdlet Microsoft.PowerShell.U... Deletes the valu...
Compare-Object Cmdlet Microsoft.PowerShell.U... Compares two set...
Convert-String Cmdlet Microsoft.PowerShell.U... Formats a string...
ConvertFrom-Csv Cmdlet Microsoft.PowerShell.U... Converts object ...
ConvertTo-Html Cmdlet Microsoft.PowerShell.U... Converts Microso...
ConvertTo-Xml Cmdlet Microsoft.PowerShell.U... Creates an XML-b...
Debug-Runspace Cmdlet Microsoft.PowerShell.U... Starts an intera...
Export-Csv Cmdlet Microsoft.PowerShell.U... Converts objects...
Export-FormatData Cmdlet Microsoft.PowerShell.U... Saves formatting...
Format-List Cmdlet Microsoft.PowerShell.U... Formats the outp...
Format-Table Cmdlet Microsoft.PowerShell.U... Formats the outp...
Get-Random Cmdlet Microsoft.PowerShell.U... Gets a random nu...
Get-Unique Cmdlet Microsoft.PowerShell.U... Returns unique i...
Group-Object Cmdlet Microsoft.PowerShell.U... Groups objects t...
Import-Clixml Cmdlet Microsoft.PowerShell.U... Imports a CLIXML...
Import-Csv Cmdlet Microsoft.PowerShell.U... Creates table-li...
Measure-Object Cmdlet Microsoft.PowerShell.U... Calculates the n...
Out-File Cmdlet Microsoft.PowerShell.U... Sends output to ...
Out-GridView Cmdlet Microsoft.PowerShell.U... Sends output to ...
Select-Object Cmdlet Microsoft.PowerShell.U... Selects objects ...
Set-Variable Cmdlet Microsoft.PowerShell.U... Sets the value o...
Sort-Object Cmdlet Microsoft.PowerShell.U... Sorts objects by...
Tee-Object Cmdlet Microsoft.PowerShell.U... Saves command ou...
Trace-Command Cmdlet Microsoft.PowerShell.U... Configures and s...
Write-Output Cmdlet Microsoft.PowerShell.U... Sends the specif...
Debug-Process Cmdlet Microsoft.PowerShell.M... Debugs one or mo...
Get-Process Cmdlet Microsoft.PowerShell.M... Gets the process...
Get-WmiObject Cmdlet Microsoft.PowerShell.M... Gets instances o...
Start-Process Cmdlet Microsoft.PowerShell.M... Starts one or mo...
Stop-Process Cmdlet Microsoft.PowerShell.M... Stops one or mor...
Wait-Process Cmdlet Microsoft.PowerShell.M... Waits for the pr...
Get-Counter Cmdlet Microsoft.PowerShell.D... Gets performance...
Invoke-WSManAction Cmdlet Microsoft.WSMan.Manage... Invokes an actio...
Remove-WSManInstance Cmdlet Microsoft.WSMan.Manage... Deletes a manage...
Get-WSManInstance Cmdlet Microsoft.WSMan.Manage... Displays managem...
New-WSManInstance Cmdlet Microsoft.WSMan.Manage... Creates a new in...
Set-WSManInstance Cmdlet Microsoft.WSMan.Manage... Modifies the man...
about_Arithmetic_Operators HelpFile Describes the op...
about_Arrays HelpFile Describes arrays...
about_Debuggers HelpFile Describes the Wi...
about_Execution_Policies HelpFile Describes the Wi...
about_ForEach-Parallel HelpFile Describes the Fo...
about_Foreach HelpFile Describes a lang...
about_Functions HelpFile Describes how to...
about_Language_Keywords HelpFile Describes the ke...
about_Methods HelpFile Describes how to...
about_Objects HelpFile Provides essenti...
about_Parallel HelpFile Describes the Pa...
about_Pipelines HelpFile Combining comman...
about_Preference_Variables HelpFile Variables that c...
about_Remote HelpFile Describes how to...
about_Remote_Output HelpFile Describes how to...
about_Sequence HelpFile Describes the Se...
about_Session_Configuration_Files HelpFile Describes sessio...
about_Variables HelpFile Describes how va...
about_Windows_PowerShell_5.0 HelpFile Describes new fe...
about_WQL HelpFile Describes WMI Qu...
about_WS-Management_Cmdlets HelpFile Provides an over...
about_ForEach-Parallel HelpFile Describes the Fo...
about_Parallel HelpFile Describes the Pa...
about_Sequence HelpFile Describes the Se...
Menggunakan Help
untuk mencari process
10 hasil yang dikembalikan dan menggunakannya untuk processes
mencari hasil 68 yang dikembalikan. Jika hanya satu hasil yang ditemukan, topik bantuan itu sendiri akan ditampilkan alih-alih daftar perintah.
get-help *hotfix*
NAME
Get-HotFix
SYNOPSIS
Gets the hotfixes that have been applied to the local and remote computers.
SYNTAX
Get-HotFix [-ComputerName <String[]>] [-Credential <PSCredential>] [-Description
<String[]>] [<CommonParameters>]
Get-HotFix [[-Id] <String[]>] [-ComputerName <String[]>] [-Credential
<PSCredential>] [<CommonParameters>]
DESCRIPTION
The Get-Hotfix cmdlet gets hotfixes (also called updates) that have been installed
on either the local computer (or on specified remote computers) by Windows Update,
Microsoft Update, or Windows Server Update Services; the cmdlet also gets hotfixes
or updates that have been installed manually by users.
RELATED LINKS
Online Version: http://go.microsoft.com/fwlink/?LinkId=821586
Win32_QuickFixEngineering http://go.microsoft.com/fwlink/?LinkID=145071
Get-ComputerRestorePoint
Add-Content
REMARKS
To see the examples, type: "get-help Get-HotFix -examples".
For more information, type: "get-help Get-HotFix -detailed".
For technical information, type: "get-help Get-HotFix -full".
For online help, type: "get-help Get-HotFix -online"
Sekarang untuk men-debunk mitos bahwa Help
di PowerShell hanya dapat menemukan perintah yang memiliki topik bantuan.
help *more*
NAME
more
SYNTAX
more [[-paths] <string[]>]
ALIASES
None
REMARKS
None
Perhatikan dalam contoh sebelumnya yang more
tidak memiliki topik bantuan, namun Help
sistem di PowerShell dapat menemukannya. Ini hanya menemukan satu kecocokan dan mengembalikan informasi sintaks dasar yang akan Anda lihat ketika perintah tidak memiliki topik bantuan.
PowerShell berisi banyak topik bantuan konseptual (Tentang). Perintah berikut dapat digunakan untuk mengembalikan daftar semua tentang topik bantuan pada sistem Anda.
help About_*
Membatasi hasil ke satu topik Tentang bantuan menampilkan topik bantuan aktual alih-alih mengembalikan daftar.
help about_Updatable_Help
Sistem bantuan di PowerShell harus diperbarui agar topik Tentang bantuan ada. Jika karena alasan tertentu pembaruan awal sistem bantuan gagal pada komputer Anda, berkas tidak akan tersedia hingga Update-Help
cmdlet berhasil dijalankan.
Get-Command
Get-Command
dirancang untuk membantu Anda menemukan perintah. Berjalan Get-Command
tanpa parameter apa pun mengembalikan daftar semua perintah pada sistem Anda. Contoh berikut menunjukkan penggunaan Get-Command
cmdlet untuk menentukan perintah apa yang ada untuk bekerja dengan proses:
Get-Command -Noun Process
CommandType Name Version Source
----------- ---- ------- ------
Cmdlet Debug-Process 3.1.0.0 Microsof...
Cmdlet Get-Process 3.1.0.0 Microsof...
Cmdlet Start-Process 3.1.0.0 Microsof...
Cmdlet Stop-Process 3.1.0.0 Microsof...
Cmdlet Wait-Process 3.1.0.0 Microsof...
Perhatikan dalam contoh sebelumnya di mana Get-Command
dijalankan, parameter Noun digunakan dan Process
ditentukan sebagai nilai untuk parameter Noun . Bagaimana jika Anda tidak tahu cara menggunakan Get-Command
cmdlet? Anda dapat menggunakan Get-Help
untuk menampilkan topik bantuan untuk Get-Command
.
Parameter Nama, Kata Benda, dan Kata Kerja menerima kartubebas. Contoh berikut menunjukkan kartubebas yang digunakan dengan parameter Nama :
Get-Command -Name *service*
CommandType Name Version Source
----------- ---- ------- ------
Function Get-NetFirewallServiceFilter 2.0.0.0 NetSecurity
Function Set-NetFirewallServiceFilter 2.0.0.0 NetSecurity
Cmdlet Get-Service 3.1.0.0 Microsof...
Cmdlet New-Service 3.1.0.0 Microsof...
Cmdlet New-WebServiceProxy 3.1.0.0 Microsof...
Cmdlet Restart-Service 3.1.0.0 Microsof...
Cmdlet Resume-Service 3.1.0.0 Microsof...
Cmdlet Set-Service 3.1.0.0 Microsof...
Cmdlet Start-Service 3.1.0.0 Microsof...
Cmdlet Stop-Service 3.1.0.0 Microsof...
Cmdlet Suspend-Service 3.1.0.0 Microsof...
Application AgentService.exe 10.0.14... C:\Windo...
Application SensorDataService.exe 10.0.14... C:\Windo...
Application services.exe 10.0.14... C:\Windo...
Application services.msc 0.0.0.0 C:\Windo...
Application TieringEngineService.exe 10.0.14... C:\Windo...
Saya bukan penggemar menggunakan kartubebas dengan parameter Get-Command
Nama karena juga mengembalikan file yang dapat dieksekusi yang bukan perintah PowerShell asli.
Jika Anda akan menggunakan karakter kartubebas dengan parameter Nama , saya sarankan membatasi hasilnya dengan parameter CommandType .
Get-Command -Name *service* -CommandType Cmdlet, Function, Alias
Opsi yang lebih baik adalah menggunakan parameter Kata Kerja atau Kata Benda atau keduanya karena hanya perintah PowerShell yang memiliki kata kerja dan kata benda.
Menemukan sesuatu yang salah dengan topik bantuan? Kabar baiknya adalah topik bantuan untuk PowerShell telah bersumber terbuka dan tersedia di repositori PowerShell-Docs di GitHub. Bayarkan ke depan dengan tidak hanya memperbaiki informasi yang salah untuk diri sendiri, tetapi orang lain juga. Cukup fork repositori dokumentasi PowerShell di GitHub, perbarui topik bantuan, dan kirimkan permintaan pull. Setelah permintaan pull diterima, dokumentasi yang dikoreksi tersedia untuk semua orang.
Memperbarui Bantuan
Salinan lokal topik bantuan PowerShell sebelumnya diperbarui bantuan pertama kali pada perintah diminta. Disarankan untuk memperbarui sistem bantuan secara berkala karena mungkin ada pembaruan pada konten bantuan dari waktu ke waktu. Update-Help
Cmdlet digunakan untuk memperbarui topik bantuan.
Ini memerlukan akses internet secara default dan bagi Anda untuk menjalankan PowerShell yang ditinggikan sebagai administrator.
Update-Help
Update-Help : Failed to update Help for the module(s) 'BitsTransfer' with UI culture(s)
{en-US} : Unable to retrieve the HelpInfo XML file for UI culture en-US. Make sure the HelpInfoUri
property in the module manifest is valid or check your network connection and then try the command again.
At line:1 char:1
+ Update-Help
+
+ CategoryInfo : InvalidOperation: (:) [Update-Help], Exception
+ FullyQualifiedErrorId : InvalidHelpInfoUri,Microsoft.PowerShell.Commands.UpdateHel
pCommand
Update-Help : Failed to update Help for the module(s) 'NetworkControllerDiagnostics,
StorageReplica' with UI culture(s) {en-US} : Unable to retrieve the HelpInfo XML file
for UI culture en-US. Make sure the HelpInfoUri property in the module manifest is valid
or check your network connection and then try the command again.
At line:1 char:1
+ Update-Help
+
+ CategoryInfo : ResourceUnavailable: (:) [Update-Help], Exception
+ FullyQualifiedErrorId : UnableToRetrieveHelpInfoXml,Microsoft.PowerShell.Commands.
UpdateHelpCommand
Beberapa modul mengembalikan kesalahan, yang tidak jarang terjadi. Jika komputer tidak memiliki akses internet, Anda dapat menggunakan Save-Help
cmdlet di komputer lain yang memang memiliki akses internet untuk terlebih dahulu menyimpan informasi bantuan yang diperbarui ke berbagi file di jaringan Anda lalu menggunakan parameter Update-Help
SourcePath untuk menentukan lokasi jaringan ini untuk topik bantuan.
Pertimbangkan untuk menyiapkan tugas terjadwal atau menambahkan beberapa logika ke skrip profil Anda di PowerShell untuk memperbarui konten bantuan secara berkala di komputer Anda. Skrip profil akan dibahas dalam bab mendatang.
Ringkasan
Dalam bab ini Anda telah mempelajari cara menemukan perintah dengan dan Get-Help
Get-Command
. Anda telah mempelajari cara menggunakan sistem bantuan untuk mencari tahu cara menggunakan perintah setelah Anda menemukannya. Anda juga telah mempelajari cara memperbarui konten topik bantuan saat pembaruan tersedia.
Tantangan saya kepada Anda adalah mempelajari perintah PowerShell sehari.
Get-Command | Get-Random | Get-Help -Full
Tinjauan
- Apakah parameter DisplayName dari
Get-Service
posisi? - Berapa banyak set parameter yang dimiliki
Get-Process
cmdlet? - Perintah PowerShell apa yang ada untuk bekerja dengan log peristiwa?
- Apa perintah PowerShell untuk mengembalikan daftar proses PowerShell yang berjalan di komputer Anda?
- Bagaimana Anda memperbarui konten bantuan PowerShell yang disimpan di komputer Anda?
Bacaan yang Disarankan
Jika Anda ingin mengetahui informasi selengkapnya tentang topik yang dibahas dalam bab ini, saya sarankan membaca topik bantuan PowerShell berikut.
Di bab berikutnya, Anda akan mempelajari tentang Get-Member
cmdlet serta objek, properti, dan metode.
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk