Temukan PowerShell
PowerShell adalah shell baris perintah dan bahasa pembuatan skrip dalam satu. PowerShell dimulai di Windows untuk membantu mengotomatiskan tugas administratif. Sekarang, ia menjalankan lintas platform dan dapat digunakan untuk berbagai tugas.
Hal yang membuat PowerShell unik adalah bahwa powerShell menerima dan mengembalikan objek .NET, bukan teks. Fitur ini memudahkan untuk menghubungkan perintah yang berbeda dalam alur.
Untuk apa PowerShell dapat digunakan?
Penggunaan PowerShell telah berkembang sejak hari-hari ketika itu hanya Windows. Ini masih digunakan untuk otomatisasi tugas Windows, tetapi hari ini, Anda dapat menggunakannya untuk tugas seperti:
- Manajemen cloud. PowerShell dapat digunakan untuk mengelola sumber daya cloud. Misalnya, Anda dapat mengambil informasi tentang sumber daya cloud, serta memperbarui atau menyebarkan sumber daya baru.
- CI/CD. Ini juga dapat digunakan sebagai bagian dari alur Integrasi Berkelanjutan/Penyebaran Berkelanjutan.
- Mengotomatiskan tugas untuk Direktori Aktif dan Exchange. Anda dapat menggunakannya untuk mengotomatiskan hampir semua tugas di Windows seperti membuat pengguna di Direktori Aktif dan kotak surat di Exchange.
Ada lebih banyak area penggunaan tetapi daftar sebelumnya memberi Anda petunjuk bahwa PowerShell telah datang jauh.
Siapa menggunakan PowerShell?
PowerShell adalah alat canggih yang dapat membantu orang yang bekerja dalam banyak peran. Secara tradisional, PowerShell telah digunakan oleh peran Administrator Sistem tetapi sekarang digunakan oleh orang-orang yang menyebut diri mereka DevOps, Cloud Ops, dan bahkan Pengembang.
Cmdlet PowerShell
PowerShell dilengkapi dengan ratusan perintah yang telah diinstal sebelumnya. Perintah PowerShell disebut cmdlet (perintah yang diucapkan-mari).
Nama setiap cmdlet terdiri dari pasangan Kata Kerja-Kata Benda . Contohnya,Get-Process
. Konvensi penamaan ini memudahkan untuk memahami apa yang dilakukan cmdlet. Ini juga memudahkan untuk menemukan perintah yang Anda cari. Saat mencari cmdlet untuk digunakan, Anda dapat memfilter kata kerja atau kata benda.
Menggunakan cmdlet untuk menjelajahi PowerShell
Ketika Anda pertama kali mengambil PowerShell, mungkin terasa mengintimidasi karena tampaknya ada begitu banyak hal untuk dipelajari. PowerShell dirancang untuk membantu Anda belajar sedikit demi sedikit, sesuai kebutuhan Anda.
PowerShell menyertakan cmdlet yang membantu Anda menemukan PowerShell. Dengan menggunakan tiga cmdlet ini, Anda dapat menemukan perintah apa yang tersedia, apa yang mereka lakukan, dan jenis apa yang mereka operasikan.
Get-Verb
. Menjalankan perintah ini mengembalikan daftar kata kerja yang dipatuhi sebagian besar perintah. Respons mencakup deskripsi tentang apa yang dilakukan kata kerja ini. Karena sebagian besar perintah mengikuti konvensi penamaan ini, perintah menetapkan harapan tentang apa yang dilakukan perintah. Ini membantu Anda memilih perintah yang sesuai dan apa yang harus diberi nama perintah, jika Anda membuatnya.Get-Command
. Perintah ini mengambil daftar semua perintah yang diinstal pada komputer Anda.Get-Member
. Ini beroperasi pada output berbasis objek dan dapat menemukan objek, properti, dan metode apa yang tersedia untuk perintah.Get-Help
. Memanggil perintah ini dengan nama perintah sebagai argumen menampilkan halaman bantuan yang menjelaskan berbagai bagian perintah.
Dengan menggunakan perintah ini, Anda dapat menemukan hampir semua yang perlu Anda ketahui tentang PowerShell.
Kata kerja
Kata kerja adalah konsep penting di PowerShell. Ini adalah standar penamaan yang diikuti sebagian besar cmdlet. Ini juga merupakan standar penamaan yang diharapkan Anda ikuti saat menulis perintah Anda sendiri. Idenya adalah bahwa Kata Kerja mengatakan apa yang Anda coba lakukan, seperti membaca atau mungkin mengubah data. PowerShell memiliki daftar kata kerja standar. Untuk mendapatkan daftar lengkap semua kata kerja yang mungkin, gunakan Get-Verb
cmdlet:
Get-Verb
Cmdlet mengembalikan daftar panjang kata kerja. Deskripsi menyediakan konteks untuk apa kata kerja dimaksudkan untuk dilakukan. Berikut adalah beberapa baris output pertama:
Verb AliasPrefix Group Description
---- ----------- ----- -----------
Add a Common Adds a resource to a container, or attaches an item to another item
Clear cl Common Removes all the resources from a container but does not delete the container
Close cs Common Changes the state of a resource to make it inaccessible, unavailable, or unusab…
Copy cp Common Copies a resource to another name or to another container
Enter et Common Specifies an action that allows the user to move into a resource
Exit ex Common Sets the current environment or context to the most recently used context
...
Temukan perintah dengan Get-Command
Get-Command
Cmdlet mengembalikan daftar semua perintah yang tersedia yang diinstal pada sistem Anda. Daftar yang Anda dapatkan kembali cukup besar. Anda dapat membatasi jumlah informasi yang kembali dengan memfilter respons menggunakan parameter atau cmdlet pembantu.
Filter pada nama
Anda dapat memfilter output menggunakan Get-Command
parameter yang berbeda. Pemfilteran memungkinkan Anda menemukan perintah yang memiliki properti tertentu. Parameter Nama memungkinkan Anda menemukan perintah tertentu berdasarkan nama.
Get-Command -Name Get-Process
CommandType Name Version Source
----------- ---- ------- ------
Cmdlet Get-Process 7.0.0.0 Microsoft.PowerShell.Management
Bagaimana jika Anda ingin menemukan semua perintah yang berfungsi dengan proses? Anda dapat menggunakan kartubebas *
untuk mencocokkan bentuk string lainnya. Contohnya:
Get-Command -Name *-Process
CommandType Name Version Source
----------- ---- ------- ------
Cmdlet Debug-Process 7.0.0.0 Microsoft.PowerShell.Management
Cmdlet Get-Process 7.0.0.0 Microsoft.PowerShell.Management
Cmdlet Start-Process 7.0.0.0 Microsoft.PowerShell.Management
Cmdlet Stop-Process 7.0.0.0 Microsoft.PowerShell.Management
Cmdlet Wait-Process 7.0.0.0 Microsoft.PowerShell.Management
Pemfilteran pada Kata Benda dan Kata Kerja
Ada parameter lain yang memfilter nilai kata kerja dan kata benda. Bagian kata kerja dari nama perintah adalah bagian paling kiri. Kata kerja harus menjadi salah satu nilai yang dikembalikan oleh Get-Verb
cmdlet. Bagian paling kanan dari perintah adalah bagian kata benda. Kata benda bisa apa saja.
Filter pada kata kerja. Dalam perintah
Get-Process
, bagian kata kerja adalahGet
. Untuk memfilter bagian kata kerja, gunakan parameter Kata Kerja .Get-Command -Verb 'Get'
Contoh ini mencantumkan semua perintah yang menggunakan kata kerja
Get
.Filter pada kata benda. Dalam perintah
Get-Process
, bagian kata benda adalahProcess
. Untuk memfilter kata benda, gunakan parameter Noun . Contoh berikut mengembalikan semua cmdlet yang memiliki kata benda yang dimulai dengan hurufU
.Get-Command -Noun U*
Selain itu, Anda dapat menggabungkan parameter untuk mempersempit pencarian Anda, misalnya:
Get-Command -Verb Get -Noun U*
CommandType Name Version Source
----------- ---- ------- ------
Cmdlet Get-UICulture 7.0.0.0 Microsoft.PowerShell.Utility
Cmdlet Get-Unique 7.0.0.0 Microsoft.PowerShell.Utility
Cmdlet Get-Uptime 7.0.0.0 Microsoft.PowerShell.Utility
Menggunakan cmdlet pembantu untuk memfilter hasil
Anda juga dapat menggunakan cmdlet lain untuk memfilter hasil.
Select-Object
. Perintah serbaguna ini membantu Anda memilih properti tertentu dari satu atau beberapa objek. Anda juga dapat membatasi jumlah item yang Anda dapatkan kembali. Contoh berikut mengembalikan nilai properti Nama dan Sumber untuk 5 perintah pertama yang tersedia dalam sesi saat ini.Get-Command | Select-Object -First 5 -Property Name, Source
Name Source ---- ------ Add-AppPackage Appx Add-AppPackageVolume Appx Add-AppProvisionedPackage Dism Add-AssertionOperator Pester Add-ProvisionedAppPackage Dism
Untuk informasi selengkapnya, lihat Pilih Objek.
Where-Object
. Cmdlet ini memungkinkan Anda memfilter objek yang dikembalikan berdasarkan nilai properti. Perintah mengambil ekspresi yang dapat menguji nilai properti. Contoh berikut mengembalikan semua proses di mana dimulaiProcessName
denganp
.Get-Process | Where-Object {$_.ProcessName -like "p*"}
Get-Process
Cmdlet mengembalikan kumpulan objek proses. Untuk memfilter respons, pipa output keWhere-Object
. Piping berarti bahwa dua perintah atau lebih terhubung melalui karakter pipa|
. Output dari satu perintah dikirim sebagai input untuk perintah berikutnya. Ekspresi filter untukWhere-Object
menggunakan-like
operator agar sesuai dengan proses yang dimulai dengan hurufp
.
Menjelajahi objek dengan Get-Member
Setelah Anda dapat menemukan cmdlet yang Anda inginkan, Anda ingin tahu lebih banyak tentang output apa yang dihasilkannya. Get-Member
Cmdlet menampilkan jenis, properti, dan metode objek. Pipa output yang ingin Anda periksa ke Get-Member
.
Get-Process | Get-Member
Hasilnya menampilkan jenis yang dikembalikan sebagai TypeName
dan semua properti dan metode objek. Berikut adalah kutipan dari hasil seperti itu:
TypeName: System.Diagnostics.Process
Name MemberType Definition
---- ---------- ----------
Handles AliasProperty Handles = Handlecount
Name AliasProperty Name = ProcessName
...
Dengan menggunakan parameter MemberType, Anda dapat membatasi informasi yang dikembalikan.
Get-Process | Get-Member -MemberType Method
Secara default PowerShell hanya menampilkan beberapa properti. Contoh sebelumnya menampilkan Name
anggota , MemberType
dan Definition
. Anda dapat menggunakan Select-Object
untuk menentukan properti yang ingin Anda lihat. Misalnya, Anda hanya Name
ingin menampilkan properti dan Definition
:
Get-Process | Get-Member | Select-Object Name, Definition
Cari menurut jenis parameter
Get-Member
menunjukkan kepada kami bahwa Get-Process
mengembalikan objek jenis Proses . Parameter ParameterType Get-Command
dapat digunakan untuk menemukan perintah lain yang mengambil objek Proses sebagai input.
Get-Command -ParameterType Process
CommandType Name Version Source
----------- ---- ------- ------
Cmdlet Debug-Process 7.0.0.0 Microsoft.PowerShell.Managem…
Cmdlet Enter-PSHostProcess 7.1.0.0 Microsoft.PowerShell.Core
Cmdlet Get-Process 7.0.0.0 Microsoft.PowerShell.Managem…
Cmdlet Get-PSHostProcessInfo 7.1.0.0 Microsoft.PowerShell.Core
Cmdlet Stop-Process 7.0.0.0 Microsoft.PowerShell.Managem…
Cmdlet Wait-Process 7.0.0.0 Microsoft.PowerShell.Managem…
Mengetahui jenis output perintah dapat membantu mempersempit pencarian Anda untuk perintah terkait.