Beranda » bagaimana » Geek School Belajar Menggunakan Cmdlet di PowerShell

    Geek School Belajar Menggunakan Cmdlet di PowerShell

    Jika Anda telah menggunakan ipconfig atau ping melalui command prompt, Anda setengah jalan untuk menjadi ninja PowerShell. Jadi, ayo dan bergabunglah dengan kami saat kami menemukan cmdlet dalam instalasi Geek School ini.

    Pastikan untuk membaca artikel pertama kami yang memperkenalkan PowerShell, dan tetap ikuti perkembangan selama seri kami sepanjang minggu.

    Anatomi Cmdlet

    Pada bagian pertama dari Seri kami melihat cmdlet yang terlihat seperti ini:

    Perbarui-Bantuan

    Cmdlet PowerShell memiliki sintaks Verb-Noun, yang dapat dilihat di atas. Yang penting untuk dicatat adalah bahwa kata benda selalu tunggal meskipun cmdlet mungkin mengembalikan lebih dari satu hasil. Untuk melihat daftar kata kerja hukum di PowerShell Anda dapat menggunakan cmdlet Get-Verb.

    Mengetahui kata kerja legal dan mengingat aturan nomina tunggal benar-benar membantu menebak nama cmdlet. Sebagai contoh, misalkan Anda mau mendapatkan Daftar jasa dan status mereka - itu benar, semudah Get-Service. Menurut Anda bagaimana menurut kami mendapatkan daftar berjalan proses - itu benar, Dapatkan-Proses akan melakukan trik.

    Dapatkan-Proses

    Ini membuatnya sangat mudah untuk bekerja dengan teknologi apa pun. Misalnya, jika Anda memiliki cmdlet Exchange yang dimuat, kami dapat dengan mudah mendapatkan daftar kotak surat di server dengan menggunakan:

    Get-Mailbox

    Namun, ada pengecualian. Selain pertukaran, semua perintah khusus teknologi lainnya akan membutuhkan awalan. Misalnya, jika kami ingin mendapatkan pengguna yang saat ini masuk melalui Remote Desktop, kami akan mengetik:

    Dapatkan-RDUserSession

    Yang bisa dilihat pada screenshot di bawah ini.

    Catatan: Screenshot ini diambil pada kotak Server 2012 karena di situlah Anda akan menemukan sebagian besar modul spesifik teknologi.

    Beberapa waktu yang lalu, saya membaca sebuah artikel oleh Don Jones, Godfather dari PowerShell, di mana dia menjelaskan bahwa Exchange dikirimkan sebelum awalan ini ditambahkan ke cmdlet, jadi itu tidak pernah diterapkan dan tidak akan pernah.

    Alias

    Fitur lain yang disertakan dengan PowerShell adalah kemampuan untuk memiliki banyak cara menjalankan perintah yang sama - alias, jika Anda mau. Hal yang luar biasa tentang mereka adalah mereka memasukkan banyak perintah yang mungkin telah Anda gunakan dalam command prompt, serta beberapa alias Linux. Misalnya, di PowerShell kita bisa mendapatkan daftar direktori dengan menggunakan:

    Dapatkan-ChildItem

    Digunakan untuk menggunakan command prompt? Jangan khawatir, mereka melindungi Anda.

    Punya latar belakang Linux? Mereka telah Anda bahas di sana juga.

    Ketika Anda telah menulis naskah selama beberapa tahun, Anda cenderung malas dan mulai banyak menggunakan alias, tetapi ini tidak membantu pendatang baru yang akan membaca kode kami. Untuk melihat perintah apa yang dijalankan alias di bawah tenda, Anda dapat menggunakan yang berikut ini:

    Dapatkan-Alias ​​-Nama ls

    Di sisi lain, jika Anda merasa sudah waktunya untuk meningkatkan permainan Anda, Anda dapat menggunakan parameter definisi untuk mendapatkan semua alias untuk cmdlet:

    Get-ChildItem -Definition Get-ChildItem

    Jika Anda berasal dari latar belakang lain, Anda dapat menambahkan alias sendiri dengan melakukan hal berikut:

    New-Alias ​​-Name icanhazfilez -Nilai Get-ChildItem

    Tentunya, Anda perlu mengganti "icanhazfilez" dengan nama alias baru Anda dan Get-ChildItem dengan cmdlet yang Anda inginkan dijalankan di bawah tenda.

    Satu hal yang perlu diperhatikan adalah bahwa Anda kehilangan semua alias yang telah Anda tetapkan saat Anda menutup shell. Anda dapat menyiasatinya dengan menambahkan definisi mereka ke skrip profil Anda.

    Memotong Parameter

    Windows PowerShell juga memungkinkan Anda memotong nama parameter hingga titik di mana mereka menjadi ambigu, yaitu hingga titik di mana PowerShell tidak bisa lagi mencari tahu parameter mana yang sedang Anda bicarakan. Sebagai contoh:

    Dapatkan-Layanan -Nama 'Perangkat Seluler Apple' -hostuter Nama lokal

    Sama dengan:

    Dapatkan-Layanan -Tidak 'Apple Mobile Device' -Chost localhost

    Jika Anda kebetulan membuat nama parameter terlalu ambigu Anda akan mendapatkan kesalahan.

    Perintah Warisan

    Akhirnya, perintah yang Anda kenal dan cintai masih akan berfungsi di PowerShell.

    ping www.google.com

    Ingatlah bahwa aplikasi lawas seperti ping menghasilkan string, dan seringkali ada cara yang lebih baik untuk melakukan hal yang sama menggunakan cmdlet PowerShell.

    Alih-alih menghasilkan string teks yang panjang, kita sekarang dibiarkan dengan objek, yang akan kita lihat di Geek School edisi besok.