Windows PowerShell Üzerinde Cmdlet – Pipeline – Scripting Kullanımı Bölüm 2

Windows PowerShell ile alakalı makale serimize devam ediyoruz.Daha önceki bölümlerde ne olduğuna bakıp kurulumunu yapmıştık bu makalede ise PowerShell üzerinde cmdlet kullanımına bakmaya devam edeceğiz.PowerShell serisinin 3. bölümünde,yani bu makalede WMI Scripting kullanımı,Matematiksel işlemler,Alias oluşturulması silinmesi ve sürücülerimizin yönetimini nasıl yapabileceğimizi anlatacağım.

 

WMI Scripting kullanımı

 

Get-wmiobject komutu kullanılarak da ister uzaktaki bir makinanın ya da local çalışmış olduğumuz pc ile alakalı bilgi toplayabilmekteyiz.Yani PowerShell üzerinde wmi filter uygulamalarıda kullanılabilmektedir.Bıos hakkında bilgi almak için aşağıdaki komutu kullanabiliriz.

 

image001

 

Bilgisayarın model’i ve üretici firması hakkında bilgi almak için ise aşağıdaki komut kullanılabilir.

 

 

 

PowerShell’de Matematiksel işlemler

 

Windows PowerShell üzerinde cmd konsolunun aksine bazı matematiksel işlemler yapılabilir.Windows PowerShell bu tür işlemleri yapabilmek için System.math statik sınıfına ihtiyaç duymaktadır.System.math içerisinde kullanılabilecek olan bir çok matematiksel hesaplama get-member aracını görüntüleyebiliriz.System.math aynı isim ile çeşitli methodlara sahiptir.Fakat parametre çeşitlerine göre bu isimler ayrıştırılmıştır.Bunları görüntüleyebilmek için aşağıdaki komutu kullanabiliriz.

 

 

Örneğin,Sqrt karekök,Max en yüksek sayıyı bulmak,Pow ise parantezler içerisinde belirtilen değişkenlerin çarpımını yapabilmek için kullanılabilecek olan komutlardır.Birer adet örneği aşağıda görebilirsiniz.

 

 

Bunların dışında bir komut ya da cmdlet’e ihtiyaç duymadan da hesaplamalar yapabilmekteyiz.Örneğin,

 

 

 

Alias

 

Daha az komut yazmak veya cmdlet kullanmak,diğer shell kullanımına alışık olan kullanıcıların PowerShell kullanımını daha kolay hale getirmek için,Windows PowerShell Alias kullanımını desteklemektedir.Yani bir komut için kullanılan alternatiflerin tamamı Alias olarak isimlendirilmektedir.

 

Bir Alias’ı cmdlet,fonksiyon ismi ya da çalıştırılabilir bir dosya adı için oluşturabilir ve daha sonra alias’ı herhangi bir komut yerine yazabilirsiniz.Windows PowerShell kendi kendimize oluşturabileceğimiz bir çok yerleşik alias içermektedir.Oluşturduğumuz alias’lar sadece varsayılan oturum içerisinde geçerlidir.Bütün alias’ları görüntülemek için aşağıdaki komutu kullanabiliriz.

 

 

Bir cmdlet’e ait olan alias’ları görebilmek için aşağıdaki komutu kullanabiliriz.Örneğin cls komutuna ait olan alias’lar.

 

 

 

Bir kaç tane alias örneği ise aşağıdaki gibidir.

 

CMD Command

Unix Command

PS Command

PS Alias

dir

ls

Get-ChildItem

gci

cls

clear

Clear-Host (function)

N/A

del, erase, rmdir

rm

Remove-Item

ri

copy

cp

Copy-Item

ci

move

mv

Move-Item

mi

rename

mv

Rename-Item

rni

type

cat

Get-Content

gc

cd

cd

Set-Location

sl

md

mkdir

New-Item

ni

N/A

pushd

Push-Location

N/A

N/A

popd

Pop-Location

N/A

 

 

 

Windows PowerShell içerisinde yer alan alias’ların tamamı .Net assembly tarafından desteklenmektedir.Alias’ların yüklü olduğu yola gidip içeriğini görüntülemek için ise aşağıdaki komutu kullanıyoruz.Dır diyerek bütün aliasların listesine yine erişim sağlayabiliriz.

 

 

Alias oluşturulması

 

Windows PowerShell’de komutlar ve cmdlet’ler için alias oluşturmak istediğimizde set-alias cmdlet’ini kullanabiliriz.Örneğin,get-help cmdlet’i için “gh” alias’ını oluşturabiliriz.

 

 

Aynı zamanda bir programı başlatan komutlar için de aliaslar oluşturabiliriz.Örneğin,Notepad için “np” alias’ını oluşturabiliriz.

 

 

Alias silinmesi

 

Alias silmek için ise yine bir cmdlet’den faydalanıyoruz.Remove-item ile bu işi halledebiliyoruz.Örneğin,”ls” alias’ını silmek için aşağıdaki komutu kullanabiliriz.

 

 

 

PowerShell ile gezinmek

 

PowerShell’in en önemli özelliklerinden biri dosya sisteminde gezinirken benzer teknikleri kullanarak farklı data sürücülerine geçiş yapabilmemize izin vermesidir.PowerShell,C ve D gibi sistem sürücülerine ek olarak, HKEY_CURRENT_USER(HKCU), HKEY_LOCAL_MACHINE(HKLM),Digital sertifika depolama alanı(cert) gibi düğümlerin tamamına bir sürücü atamaktadır.Bu sürücülerin görüntüleyebilmek için aşağıdaki komutu kullanabiliriz.

 

 

Dosya sistem sürücülerinde gezinmek için kullandığın benzer teknikleri kullanarak Windows registry’de gezinebiliriz.Windows PowerShell ile alakalı sürücüler ve bileşenler HKEY_LOCAL_MACHINE(HKLM) ve HKEY_CURRENT_USER(HKCU) register altında saklanmaktadır.Örneğin,

 

 

Görüldüğü gibi,Register’da Dır komutunun çıktısı dosya sistemindekinden değişik olduğunu farkedeceksiniz.Çünkü register farklı bilgilere ve sürücülere sahiptir.Shell bilgilerin değişik bir görünümü sağlamaktadır.İşletim sistemimiz üzerinde gerçekleştirilen bütün işlemler register tarafında yapılan bir kaç değişiklikten ibarettir.Mesela,Remote Desktop bağlantısının açık olup olmadığı PowerShell üzerinde kullanılabilecek olan temel bir komut aracılığıyla görüntülenmektedir.Örneğin,get-ItemProperty kullanarak register keylerini görüntüleyebiliriz.

 

 

Windows PowerShell’de genişletilmiş navigasyon özellikleri arkasındaki kavram PowerShell sürücüsüdür.Bu sürücüler,PowerShell’de kullanılan data depolarında oluşturulmuştur.Ve C: veya My Drive gibi geçerli bir isme sahip olabilirler.Dosya sistem sürücülerinde kullandığımız yöntemleri kullanarak sürücüler üzerinde de gezinebiliriz.Fakat PowerShell sürücüleri Sadece Powershell üzerinde görülebilir.Bu sürücülerin hiç birini Windows Explorer veya Cmd.exe gibi arayüzlerden göremeyiz.

 

Windows PowerShell ile birlikte gelen sürücüleri görebilmek için yukarıda kullanmış olduğumuz get-psdrive komutunu kullanabiliriz.Kendi powershell sürücülerimizi oluşturmak için ise New-psdrive komutunu kullanabiliriz.Örneğin,My Documents’in içeriğini “MyDocs” isimli bir sürücüye atmak için aşağıdaki komutu kullanabiliriz.

 

 

Windows PowerShell üzerindeki sürücüler .Net gibi sağlayıcılar tarafından oturumunuzu kullanılabilir hale getirebilirler.Böylece kolaylıkla datalarınızı yönetebilir ve görebilirsiniz. Windows PowerShell üzerindeki provider’ların tamamını görüntüleyebilmek için aşağıdaki komutları kullanabiliriz.

 

 

 

 

Bu bölümde Windows Server 2003 üzerine bir eklenti aracılığıyla yüklenebilen,bunun yanında Windows Server 2008 üzerinde hazırda gelip bir Feature olarak kurulabilen Windows PowerShell’i üzerinde WMI Scripting kullanımı,Matematiksel işlemler,Alias oluşturulması silinmesi ve sürücülerimizin yönetimi gibi konulara baktık.Bir başka Server 2008 makalesinde görüşmek üzere,

 

Hoşçakalın…

 

Kaynak:

Microsoft Offical Course(MOC)

Exit mobile version