ASP.NET
Network Akademi

Met Hostimg

“Bilgi paylaşıldıkça artar” sloganı ile .NET Platformuna ilişkin birikimlerin paylaşıldığı ASP.NET.TR Topluluğunda sizde “YAZAR” olmak için ; info@asp.net.tr e-mail adresine kendinizi anlatan bir e-mail göndererek başvuruda bulunabilirsiniz.

Powershell Part I

Yenal TIRPANCI
Sistem Uzmanlığı
08.02.2011 14:10:50
Hit : 6228

MODUL 1
Windows PowerShell Nedir?

Windows powershell etkileşimli bir komut kabuğudur.windows powershell windows xp sürümlerinde ve windows server 2003 sürümlerinde indirilip kullanılabilen bir araç iken windows server 2008 için opsiyonel (isteğe bağlı ) olarak kurulabilen bir özellik haline gelmiştir.

                Windows powershell windows sistemlerini yönetmek için kullanılabilen araçlardandır ve yönetici arayüzü olarak hizmet vermektedir.
          Bu ilk modülde nesneler,değişkenler,cmldlets(Command Let) neler olduğunu ve bunları nasıl kullanacağımızı anlamaya çalışalım.
                Windows server sürümlerinde de şimdiye kadar grafiksel olarak çalıştık.Unix ve Linux sistemlerinde gördüğümüz komut satırı windows powershell olarak windows kullanıcılarının karşısına çıkmış oldu.
                Windows PowerShell basit bir komut satırı gibi görünsede sanıldığı kadar basitleştirilmiş bir komut satırı olmadığını birlikte de göreceğiz biliyoruz ki microsoft Net.Framework ile bizlere bir kütüphane sunmaktadır.bu kütüphane net yazılımlarında oldukça işleri kolaylaştırmıştır ve aynı zamanda kullanılacak nesneler vs. zenginleştirilmiştir.işte bu noktada powershell de bu kütüphaneden faydalanmaktadır ve bir derleyici gibi çalışmaktadır.
                Windows Powershell .NET,COM ve WMI (Windows Management Instrumentation) objeleri ile birlikte kullanılabilmeside ciddi bir avantaj olarak ortaya çıkmaktadır.Bütün söylediklerimize ek olarak kayıt defteri ve sayısal sertifika depoları gibi diğer veri kaynaklarına erişimde son derece basitleştirilmiştir.
WINDOWS POWERSHELL

En az .Net.FrameWork 2.0 gerektirir.

Windows Server 2008 R2              (Kullanılabilmektedir)

Windows Server 2008                  (Opsiyonel Olarak Kullanılabilir)
Windows Server 2003                    (İndirilip Kurulabilir)
Windows Xp Sürümlerinde            (İndirilip Kurulabilir)
Önemli Not: Windows Server Core Sürümleri şimdilik net framework yapısını kullanamadığından PowerShell Desteklememektedir.En üzücü durumuda bu zaten.Fakat bununla Birlikte az önce saydığımız ve kullanılabilir Windows Sürümlerinde bulunan PowerShell ile Server 2008 Core Sürümlerini yönetilebilmektedir.
Kısaca Windows PowerShell  özelliklerini anlatacak olsak

·         Yorumlayıcı ( Derleyici)  Bir Programlama dilidir.

·         Windows PowerShell en az Net.Framework 2.0 ile birlikte çalışır.

Not: Aslında burada şunu belirtmek istiyorum framework ün ne kadar güncel versiyonunu kullanır isek powershell komut satırımızda kullanacağımız nesneler,cmdletslerde o kadar genişleyip zenginleşecek demektir.

Windows PowerShell 2.0 ile birlikte
*Powershell 1.0 ile uyumludur.
*Windows PowerShell Remoting
*Background işlemleri
*Scriptlerden Hataların Ayıklanması
*iyileştirilmiş ve yeni eklenmiş CmdLets ler dahil olmuştur.
*Get-Member iyileştirilmiştir.
*Active-Directory hizmet arabirimi geliştirilmiştir.
*WMI (Windows Management Instrumentation)
Not: WMI Nedir?
Windows İşletim sistemlerinde bulunan her bir nesnesinin kontrol edilebilmesini sağlayan bir teknolojidir.
WINDOWS POWERSHELL YÜKLENMESİ
MODULE 2
Object Nedir?
Poweshell in nesne tabanlı olduğunu söylemiştik ve powershell in bir derleyici gibi çalıştığından da dile getirmiştik.
Türkçede nesnenin anlamı nedir. Elle tutulabilen olmasının yanında rengi,ağırlığı olan yani özellikleri olan maddeler olduğunu biliyoruz. Bilgisayar dilinde de buna benzerdir.
Ve powershell nesnelerininde özellikleri ve çeşitleri olmaktadır.bu özellikleri sayesinde nesneleri tamamlayıp istediğimiz sonuçları alabilmekteyiz.

Yani, şöyleki

                                                                  NESNE

Properties                                             MEMBER                                                Method
Şeklinde şekil olarak algılayabiliriz.
Ve bu method ve properties ler Nesnenin tamamlayıcı sı olarak kullanırken member olarak adlandırırız.
Daha somut bir örnek verecek olursak
ARABA
Özellikleri                                                           Method
Model                                                                 Çalıştırılması (Start)
rengi                                                                    Gitmesi                                                                                                                                                                                                                           Durması (Stop)
ve yukarıdaki özellikleri ve methodları taşıması için bazı gereksinimleri vardır. Yani ne demek bu arabanın olması içinde bazı gereksinimleri olmalı yani araba olması için tekerleri,kapısı,pencereleri olmalıdır işte özellikler ve methodlar da bunların memberidir.
Şimdi bizim konumuzla ilgili olarak örnekler verelim daha net anlayacaksınız.
  
PROCESS
Özellikleri (Properties)                                                                                METHOD
Machine Name                                                                                               Close
Modules                                                                                                           Kill
Process Name                                                                                               Refresh
Windows Title                                                                                                 Start
ID                                                                                                                       Equels
PID
Gibi ve bu bütün properties ve methodlar Process in MEMBER larıdır.
Aynı şekilde başka bir örnek verelim.
  
SERVICE
Properties                                                                                        Method
Name                                                                                                 Start
Display Name                                                                                  Stop
Status                                                                                                Pause
Logon Account                                                                                 Resume
Startup Mode
Gibi
Peki bu memberlari ezberleyecemmi yada sadece bu kadarmı diye sorabilirsin tabiiki hayır çok geniş bir kütüphaneye sahiptir.
Bu üyeleri Get-MEMBER komutu ile öğrenebilirim.
Mesela
Get-Command | Get-Member
Get-Member gm olarakda kullanabiliriz.
 
CMDLETS (COMMAND LETS)
Bir CMDLETS windows powershell objeleri işleyen tek özellikli bir komuttur.ve powershellin komut dizilimidir..Net programlama dilleri olan C# ve VB gibi dillerin matığı kullanılmıştır.
Büyük küçük harf duyarlılığı yoktur ama yinede uymaya özen göstermekte fayda vardır.
Örnekleyecek olursak
Get-Process                      -Name                                   SVCHOST
CmdLets                             Parametre Adı                      Parametre Değeri
Şeklindedir.
 
Bizim burada aslında kullanacağımız yada asıl bilmemiz gereken 5 adet komut mevcuttur.
Get
Add
New
Remove
Set
Get verileri çekmek için yani okumak için kullanılır.
Set ise veri girmek için kullanılır.
Örneğin
Get-date o anki zamanı verirken
Set-date zaman değerini bizden istemektedir.
Peki bu komutların cmdlets lerini nasıl görürüm
Get-Command -Verb Get
Get-Command -Verb Set
Get-Command -Verb Add
Gibi kullanılabilmektedir.
Örnek CMDLETS Örnekleri
Noun                                  Get                                               New                                     Set
Date                               Get-Date                                                                                     Set-Date
ExecutePolicy           Get-ExecutePolicy                                                                        Set-ExP
Item                               Get-Item                                        New-Item                             Set-Item
Şeklindedir.
Birazda Değerlere ve bu değerlerini Memberlarına bakalım.
“NetworkAcademy” | Get-Member
Üyerlerini listeledikten sonra
TypeName: System.String Geri Dönderdiği Değer tipi String
String ifadelerin üyelerini gördükten sonra ona göre hangi değerleri döndereceğini görebiliriz.
Örnek Verecek Olursak
NetworkAcademy”.ToUpper()" Sonuç olarak bana döndüreceği değer Büyük Harf olarak döndürecektir.
ToLower() Küçük harfe dönüştürerek değer dönderecektir.
NetworkAcademy”.Split(‘e’)" Komutunu Kullandığımda da "e" harflerini kaldırarak geriye veri döndürecektir.
 



BU İÇERİĞE YORUMDA BULUNUN


Bu MAKALE'ye yorum yapabilmek için Üye olmalısınız ...!


BU İÇERİĞE YAPILAN YORUMLAR