PowerShell menawarkan dua cara bagi Anda untuk memperluas cangkang. Anda dapat menggunakan snapins, yang hanya bersifat biner dan dikembangkan dalam bahasa pemrograman lengkap seperti C #, atau Anda dapat menggunakan modul, yang dapat berupa biner dan juga berbasis skrip.
Pastikan untuk membaca artikel sebelumnya dalam rangkaian:
Dan nantikan terus sisa serial ini sepanjang minggu.
Snapins sangat tahun lalu. Semua jokes samping, snapins tidak pernah benar-benar tertangkap di kalangan komunitas PowerShell karena sebagian besar scripters tidak pengembang dan Anda hanya dapat menulis snapins dalam bahasa seperti C #. Namun demikian masih ada beberapa produk yang menggunakan snapins, seperti Web Deploy misalnya. Untuk melihat apa snapins yang tersedia untuk Anda gunakan di shell Anda menggunakan perintah berikut:
Dapatkan-PSSnapin -Daftar
Untuk menggunakan perintah yang ditambahkan oleh snapin, Anda harus terlebih dahulu mengimpornya ke dalam sesi Anda, dan Anda dapat melakukannya seperti ini:
Tambahkan-PSSnapin -Nama WDeploySnapin3.0
Pada titik ini, Anda akan mendapatkan kesalahan jika Anda tidak menginstal snapin Penginstalan Web. Jika Anda menginstalnya, seperti yang saya lakukan, maka itu akan diimpor ke sesi Anda. Untuk mendapatkan daftar perintah yang tersedia di snapin, Anda cukup menggunakan cmdlet Get-Command:
Dapatkan-Command -Module WDeploy *
Catatan: Secara teknis ini bukan modul, tetapi untuk beberapa alasan Anda masih harus menggunakan parameter Modul.
Modul lebih baru dan merupakan jalan ke depan. Mereka dapat ditulis dengan menggunakan PowerShell maupun dikodekan dalam bahasa seperti C #. Sebagian besar perintah built-in diatur ke dalam modul juga. Untuk melihat daftar modul di sistem Anda, Anda dapat menggunakan perintah berikut:
Dapatkan-Modul -List Tersedia
Saat produk diperbarui, mitra PowerShell mereka sedang bermigrasi ke modul. Sebagai contoh, SQL dulu memiliki snapin, tetapi sekarang terdiri dari modul.
Untuk menggunakan modul, Anda perlu mengimpornya terlebih dahulu.
Impor-Modul -Name SQLASCMDLETS
Anda dapat menggunakan trik yang sama yang kami gunakan dengan snapin untuk melihat semua perintah yang ditambahkan modul ke shell.
Sehingga meninggalkan pertanyaan: bagaimana PowerShell tahu apa itu snapins dan modul yang Anda miliki di sistem Anda? Nah, snapin sedikit sakit dan harus dipasang. Bagian dari proses instalasi termasuk membuat beberapa entri registri yang dilihat PowerShell untuk mencari informasi snapin. Modul, di sisi lain, dapat didaftarkan dengan shell hanya dengan menempatkannya di salah satu lokasi dalam variabel lingkungan PSModulePath. Atau, Anda bisa menambahkan jalur ke modul ke variabel lingkungan.
($ env: PSModulePath) .Split (";")
Itu akan memuntahkan isi dari variabel. Perhatikan bahwa jika Anda memiliki modul seperti SQL diinstal, bagaimana ia memodifikasi variabel untuk memasukkan lokasi modul SQL.
PowerShell 3 memperkenalkan fitur baru yang luar biasa yang berjalan dengan beberapa nama. Tak satu pun dari mereka resmi, tetapi "Modul Pemuatan Otomatis" adalah deskripsi terbaik dari itu. Pada dasarnya, ini memungkinkan Anda untuk menggunakan cmdlet milik modul eksternal tanpa secara eksplisit mengimpor modul menggunakan cmdlet Impor-Modul. Untuk melihat ini, pertama-tama hapus semua modul dari shell Anda menggunakan perintah berikut:
Dapatkan-Modul | Hapus-Modul
Anda kemudian dapat memeriksa bahwa Anda tidak memiliki modul yang dimuat dengan menggunakan yang berikut:
Dapatkan-Modul
Sekarang gunakan cmdlet yang tidak ada di pustaka inti. Test-Connection adalah yang bagus:
Localhost Test-Koneksi
Jika Anda memeriksa modul yang dimuat lagi, Anda akan melihat bahwa itu memang memuat modul.
Itu semua untuk orang hari ini, bergabung dengan kami besok untuk lebih.