5 Cmdlet untuk Memulai Anda dengan PowerShell
PowerShell dengan cepat menjadi bahasa scripting pilihan dan CLI Pengguna Power serta IT Pro. Sebaiknya pelajari beberapa perintah untuk memulai, jadi kami punya 5 cmdlet berguna untuk Anda pelajari hari ini.
Dapatkan-Perintah
Get-Command adalah salah satu cmdlet paling berguna di seluruh PowerShell, karena itu akan membantu Anda memahami PowerShell dengan membiarkan Anda mencari cmdlet tertentu. Menggunakan Get-Command sendiri diakui tidak terlalu berguna karena hanya akan memuntahkan setiap perintah yang dimiliki PowerShell.
Tapi dari sini kita bisa melihat bahwa objek yang dihasilkan PowerShell memiliki properti Name dan ModuleName. Dengan menggunakan informasi ini, kami dapat menyempurnakan pencarian kami, dengan mencari cmdlet yang berisi istilah tertentu. Misalnya jika saya ingin menemukan semua cmdlet yang berisi kata "IP", saya bisa melakukan ini:
Get-Command -Name * IP *
Seperti yang Anda lihat, kami masih mendapatkan beberapa hasil, opsi kami berikutnya adalah mencari di dalam modul tertentu. Dalam kasus kami, saya akan memilih modul NetTCPIP.
Dapatkan-Perintah -Module NetTCPIP -Nama * IP *
Mendapatkan bantuan
Setelah Anda menemukan cmdlet yang Anda cari menggunakan Get-Command, Anda akan ingin mengetahui sintaks dan bagaimana Anda dapat menggunakan cmdlet tertentu. Di sinilah Get-Help masuk, jika Anda pernah menggunakan baris perintah di Windows Anda mungkin melakukan sesuatu seperti ini:
ipconfig /?
Nah itu tidak bekerja di PowerShell, ini karena di PowerShell spasi digunakan untuk memisahkan perintah dari parameternya. Jadi alih-alih kami menggunakan Get-Help dan memberikan nama cmdlets ke Get-Help sebagai parameter.
Get-Help Get-Process
Dapatkan Anggota
Get-Member memungkinkan kami mendapatkan informasi tentang objek yang dikembalikan oleh cmdlet. Tangkapan dengan get-member, adalah bahwa itu bergantung pada fitur pipa PowerShell, untuk menunjukkan ini, kita akan dapat menggunakan cmdlet Get-Process.
Seperti yang Anda lihat output PowerShell menunjukkan kepada kita beberapa properti, yang dapat Anda lihat di bagian atas setiap kolom. Masalah pertama adalah bahwa, sementara itu adalah properti yang mungkin Anda cari sebagian besar waktu, masih ada lebih banyak lagi. Masalah kedua adalah tidak menunjukkan metode apa pun yang dapat kita panggil pada objek. Untuk melihat metode dan properti kita dapat menyalurkan output kita ke Get-Member, seperti:
Dapatkan-Proses | Dapatkan Anggota
Meskipun mungkin tidak ada artinya bagi Anda saat ini, Anda cepat atau lambat harus menggunakan Get-Member, dan semakin cepat Anda belajar menggunakannya semakin baik. Sebagai contoh, dengan menggunakan informasi dari output kita dapat melakukan sesuatu seperti:
Mulai-proses notepad.exe
$ NotepadProc = Get-Process -Name notepad
$ NotepadProc.WaitForExit ()
Mulai-Proses calc.exe
Script itu akan meluncurkan notepad, kemudian menetapkan output "Get-Process -Name notepad" ke variabel $ NotepadProc, lalu kita memanggil metode WaitForExit pada $ NotepadProc yang menyebabkan script berhenti sementara sampai Anda menutup notepad, setelah Anda menutup notepad maka kalkulator akan diluncurkan.
$ _ (Objek Pipa Saat Ini)
Meskipun bukan cmdlet, itu adalah salah satu variabel khusus yang paling banyak digunakan di PowerShell. Nama resmi untuk $ _ adalah "objek pipa saat ini". Ini digunakan dalam blok skrip, filter, klausa proses fungsi, di mana-objek, foreach-objek dan switch. Namun lebih mudah untuk dijelaskan dengan contoh, yang membawa kita ke cmdlet berikutnya dan terakhir kita, Di mana-Objek.
Dimana-Obyek
Di mana-Objek melakukan persis seperti apa suaranya, ia memilih objek berdasarkan apakah ia memenuhi kriteria tertentu. Ini akan menyatukan $ _, dan properti yang bisa kita lihat menggunakan Get-Member. Untuk mendemonstrasikan ini, kita akan menyalurkan output Get-Process ke dalam cmdlet Where-Object.
Dapatkan-Proses | Where-Object $ _. Name -eq “iexplore”
Jadi, apa yang terjadi di sini, Anda bertanya? Nah hal pertama yang kami lakukan adalah mendapatkan daftar proses di komputer kami dan meneruskan output (menggunakan | karakter) ke cmdlet Where-Object kami, yang mengambil blok skrip sebagai parameter. Blok skrip (didefinisikan oleh kurung kurawal) menginstruksikan cmdlet Where-Object untuk hanya memilih objek di mana parameter namanya sama dengan "iexplore", jadi kami hanya mendapatkan daftar instance IE yang sedang berjalan. Hanya itu yang ada, bersenang-senanglah!