Windows Powershell Serisi – I

Bir IT profesyoneli olarak her gün defalarca yapt???m?z görevler hiç ?üphesiz bir süre sonra büyük bir külfet olabiliyor. Ne mutlu ki; Microsoft bunun fark?nda. Microsoft’un son senelerde bizlerle tan??t?rd??? bir çok uygulaman?n arkas?nda scripting deste?i var. Bunun da en büyük temsilcisi elbette Microsoft Powershell. Belki de ilk olarak Exchange Server 2007 kurulumunda bir ön gereksinim olarak tan?d?k Powershell’i. ?imdilerde ise Windows ile birlikte gelen ve her noktada i?imizi kolayla?t?ran kuvvetli bir araç. Al??t???m?z komut sat?r?n?n aksine tamamen dinamik bir araç Powershell. Exchange Server’den Hyper-V’ye, System Center ürün ailesinden üçüncü parti uygulamalara kadar her a?amada büyük bir yard?mc?dan bahsediyoruz asl?nda. O halde bu geni? yaz? dizimizde Powershell’i nas?l ele alaca??z buna bir bakal?m…

Öncelikle bu sihirli komut sat?r? biriminin yeteneklerini tan?yaca??z. Sonras?nda, farkl? modüller ile geni?letilebilen ve çok geli?mi? bir program yazmaya kadar uzanabilen yap?s?n? ele alaca??z. ?sterseniz ilk bak??ta “Powershell ile neler yapabilirim?” sorusuna ba?l?klar halinde de?inelim. ??te bir nefeste Powershell ile yap?labileceklerden baz?lar?:

  • Command Prompt ile yap?labileceklerin tamam? (cmd.exe)
  • Full WMI deste?i sayesinde bütün isletim sistemi katmanlar?na eri?im
  • COM ve ADO obje deste?i ile spesifik görevler
  • API deste?i ve Full .NET entegrasyonu
  • Bütün günlük yönetimsel görevlerin yerine getirilmesi (Active Directory Obje Yönetimi, Sertifika Servisleri Yönetimi, Yedekleme Operasyonlar?, Uzak Yönetim Faaliyetleri…)

Gelin ba?layal?m!

Windows Powershell ?u anda 2.0 versiyonu ile kullan?mda. Örneklerimiz bu versiyon üzerinden devam ediyor olacak. Öncelikle Powershell’in Windows 7 ve Windows Server 2008 R2 ile varsay?lan olarak geldi?ini söylemekte fayda var. Windows Vista ve Windows Server 2008 kullan?yorsan?z ise bu özelli?i aktif etmelisiniz. Program Ekle/Kald?r ilePowershell’i yükleyebilirsiniz. Unutmadan; Windows Server 2008 ve Windows Vista içerisindeki sürüm 2.0 de?il. Powershell 2.0 sürümünü a?a??daki linkten indirip kurabilirsiniz.

http://support.microsoft.com/kb/968930

Windows 7 ve Windows Server 2008 R2 kullanicilar? d???ndaki kullanicilar yukar?daki yüklemeyi yapt?ktan sonra Start Menu’ye powershell yazd???m?zda a?a??daki bile?enleri görüyoruz.

Bu bile?enleri dizimiz içerisinde gerekti?inde ele al?yor olaca??z.

Adettendir, ilk olarak me?hur “Merhaba Dünya” ile ba?layal?m!

Powershell ile yap?labileceklere minik birkaç örnek vererek ba?lamak ve sonras?nda ana ba?l?klar alt?nda derine inmek istiyorum.

Powershell’e ne kadar verirseniz o kadar geri al?rs?n?z demek yanlis olmaz. Çünkü o oldukça ak?ll?d?r ve sizi anlar J

Matematik’te oldukça iyidir!

?stedi?iniz kadar esnek olabilirsiniz!

Gördü?ünüz gibi say?larla aras? iyi olan Powershell, içerisinde entegre olan fonksiyonlarla neredeyse tüm söylediklerinizden anlar.

Biraz daha örnek…

Evet gerçekten oldukça zevkli bir ortam oldugunu söylemek istiyorum. Bir uygulama geli?tirici nas?l tamamen hayal gücü ile s?n?rl?ysa i?te Powershell ortam? içerisinde de s?n?r sizin hayal gücünüz!

Tamam peki, madem s?n?rlar? olmayan bir ortam buras?, o halde biraz daha spesifik girelim. Soru-cevap ?eklinde Powershell’i biraz daha tan?yal?m.

  1. Powershell’de kullanaca??m bütün komutlar? nas?l görebilirim?

    Get-command

  2. Spesifik bir komut hakk?nda nas?l yard?m alabilirim? Örnek get-process komutu hakk?nda yard?m için ne yapmal?y?m?

    Get-help get-process -full

  3. Powershell ile komutlar? hatas?z olarak nas?l yazabilirim?

    Tab tu?u ile komutlar? tamamlayabilirsiniz.

  4. Powershell’de kullanabilece?im k?sayollar var m??

    F7 tu?u ile komut geçmi?ini görüntüleyebilirsiniz.

  5. Bir komuta ait alt komutlar? ve metodlar? nas?l görüntüleyebilirim? Örnek get-process ile birlikte kullanabilece?im alt komutlar nelerdir?

    Get-process | get-member

  6. Bir komut yazd???mda ç?kt?y? detay?yla görmek için ne yapmal?y?m? Örnek get-process

    Get-process | FL

  7. Powershell ile bir dosyan?n içeri?ini nas?l görüntüleyebilirim? Örnek onur.txt

    Get-content onur.txt

  8. Bir klasör içerisindeki ö?elerin tamam?n? (alt klasörler ve ö?eler ile birlikte) nas?l listeleyebilirim?

    Get-childitem -recurse

  9. Bir sat?rda birden fazla komut çal??t?rabilmek için ne yapmal?y?m?

    Get-process ; write-host “merhaba dünya” (komutlar aras?nda ; i?areti kullan?lmal?d?r)

  10. Powershell içerisinde yazd???m komutlar? bir script dosyas? haline getirip bir seferde çal??t?rabilir miyim?

    Text dosyas?na komutlar? yaz?p .ps1 uzant?s?yla kaydedip powershell içerisinde çal??t?rabilirsiniz. Scriptlerin Powershell içerisinde çal??abilmesi için a?a??daki komutun bir kereli?ine çal??t?rlmas? gerekir.

    Set-ExecutionPolicy unrestricted

10 soruda Powershell hakk?nda minik fikirler vermek istedim. Her dizide 10 soru-cevap ile konuyu ve örnekleri zenginle?tirmeye çal??aca??m.

Sonraki dizilerde Powershell’in derinliklerine inmek ve spesifik görevleri yerine getirebilmek üzere ?imdilik ho?çakal?n!