MyRaffaell Blog

demo

Perkenalkan, Windows Powershell, Paul robichaux (admin unix, setidaknya tidak akan tertawa lagi)


Scripting di windows sudah lama menjadi bahan tawaan para admin unix, karna keterbatasan windows untuk membuat scripting yang tidak lebih hebat dari unix, namun saat ini windows sedang mengembangkan ruanglingkup shell untuk windows, yang disebut dengan windows powershell dengan code name Monad.

Powershell ini memberikan beberapa kemampuan scripting di windows, dan juga meningkatkan feature dari metode scripting sebelumnya, walaupun ini masih dalam release candidate, namun ini dapat berguna juga untuk kita bagaimana powershell akan menghilangkan gap yang pernah ada selama ini dan bagaimana cara kerjanya

Mengisi Gap

Microsoft mendesain powershell untuk memberikan kemampuan scripting yang lebih powerfull yang seharusnya muncul di windows sebelumnya, sehingga powershell ini diharapkan akan memiliki ruang lingkup scripting yang lebih luas dan lebih mudah daripada scripting tools yang ada di OS lain, mereka juga menginginkan untuk memudahkan automatisasi sistem administrasi dengan memanfaatkan task, dan aplikasi developmen lainya dan ini juga sudah terintegrasi langsung dengan .NET Framewrok.

untuk mengisi kekosongan dari kemampuan scripting windows, Windows memberikan beberapa variasi ruanglingkup commandline seperti:

**1. Komposisi

**

dengan komposisi memungkinkan kita menciptakan command yang complex sekalipun dengan meng string kan semua command sehingga menyebabkan ini akan memproses 1 kali.

banyak Unix admin menggunakan komposisi command dalam kegiatan sehari harinya.

2. Pipeline

Dengan pipeline ini memungkinkan kita untuk mengambil output command dan menjadikanya sebagai input pada command berikutnya, contohnya

dir | more

dengan model ini, perintah dir akan dilanjutkan outputnya sebagai input dari more, yang kita ketahui sekarang windows tidak mampu melakukan hal ini sebelum sebelumnya

3. Orientasi Object

Output dari Command powershell berdasarkan objek yang ada, bukan blok dari teks, dimana kalau objek memiliki metoda properti ( item yang bisa kita lihat dan rubah )

sebagai contoh:

kita dapat menggunakan perintah get-mailbox untuk melihat list objek pada get-mailbox, sehingga dengan begitu variasi command akan lebih banyak.

4. Safety

kebanyakan dari powershell command mampu melakukan pembuatan dan perubahan objek yang masing masing ditandai dengan 2 jenis flag, yaitu konfirm dan whatif, dimana confirm flag digunakan untuk melakukan beberapa aksi, sedangkan whatif flag digunakan untuk melihat apa yang sedang berubah dan mengambil aksi dari perubahan tersebut.

5. Konsistent Struktur dan Konsistent Naming.

Kebanyakan dari powershell menggunakan verb-object yang konsisten, dan penamaan yang konsisten juga, sehingga dengan konsistensi dari verb kecil yang diberikan powershell memudahkan kita untuk membangun dan mengombinasikan command.

6. Online help

nantinya powershell akan dilengkapi dengan online help yang mencakup semua objek dan penggunaan dalam ruanglingkupnya itu sendiri, jadi jangan khawatir kalau kita takut untuk mempelajari ini.

101 hal tentang powershell

Powershell di bangun dari banyak objek yang disebut dengan cmdlets (pronoun command-lets).

cmdlets adalah analog dll yang dapat berjalan sendiri sendiri, sehingga dengan alasan tersebut cmdlet ini akan berjalan dalam ruang lingkup powershell interpreter.

untuk saat ini powershell release candidate 1 telah meng include kan lebih dari 120 cmdlets.

masing masing cmdlet ini akan memiliki parameter khusus, sebagai contoh:

saat kita menggunakan cmdlet get-mailbox parameter pertama mailbox apa yang akan kita get, kita dapat melebarkan parameternya dengan mengspesifikasikan namanya.

sebagai contoh format kemudahan yang dapat diberikan oleh cmdlet

1.format cmdlet (untuk table dan list)

kita dapat memilih format yang kita suka untuk properti yang akan di display, sebagai contoh pada saat kita ingin melihat hanya nama mailbox dan ukuran totalnya, dengan menggunakan command:

get-mailboxstatistics | format-table name, size

2. Cmdlet where

dapat memilih object yang akan di keluarkan sebagai contoh:

get-eventlog application | where

{$_.ID eq -1018″}

dengan begini, powershell akan mencari pada aplikasi eventlog dan mengeluarkan semua event yang memiliki event ID 1018

3. Group cmdlet yang memiliki properti yang kita pilih secara spesifik

katakanlah kita mau me list semua mailbox yang ada di enterprise bersamaan dengan sizenya, yang di kelompokan berdasarakan mailbox mana yang sedang dimasuki, maka kita bisa memberikan trik command:

get-mailboxstatistics | group MailboxDatabase | format-table count, name

powershell ini nantinya akan variatif terkadang kita akan memiliki berbagai jenis command yang memiliki fungsi yang hampir sama, dan command nya pun dapat disingkat, seperti fl untuk format-list, atau bisa di bilang powershell juga memiliki alias command, shingga hal ini menyebabkan powershell memudahkan orang yang sudah terbiasa memegang shell sebelumnya tidak perlu beradaptasi yang sulit dlam mengembangkan scriptingnya

Powershell in Action!

Aplikasi pertama microsoft yang sudah mengadaptasi powershell didalamnya adalah MS Exchange 2007, atau biasa disebut dengan Exchange 12, dimana dalam featurenya ms exchange ini akan memiliki cmdlet tersendiri pula didalamnya yang memungkinkan kita untuk mengolah virtual direktori, mailbox groups, storage groups.

comments powered by Disqus