PowerShell “cmdlet” Kavramı

21 Tem
2009

Bugün PowerShell ile ilgili makale serimizin üçüncü makalesi olan écmdlets” kulllanımını anlatacağım.

Cmdlet (Command-Lets) Windows PowerShell’de objeleri işleyen basit fonksiyonlu bir komuttur. Yani cmdlet PowerShell’in komut dizimidir. Fakat bu komutlar standart çalıştırılabilir (executable) dosyalar şeklinde değil de .NET fonksiyonları şeklinde çalışmaktadır. .NET programlama dillerinin mantığı burada kullanılmıştır.

Windows PowerShell’de birçok komut (cmdlets) çok basittir ve diğer komutlar ile kombinasyon halinde kullanılmak için tasarlanmıştır.

Örneğin “Get” komutu sadece bilgi alır. “Set” komutu sadece bilgi güncelleştirmek için, “Format” komutu bilgi formatlamak için, “Out” ise komut çıktısı almak için kullanılır.

Windows PowerShell’de kullanılan komutların ve parametrelerin büyük küçük harf duyarlılığı yoktur.

Kullanımı

Örneğin; Get-Process komutu (cmdlets) çalışan uygulamaların bir listesini vermektedir.

Stop-Process komutu çalışan bir uygulamayı durdurmak için kullanılır.

Aynı şekilde tanımlanmış Get-Service ve Stop-Service komutları servisleri listeler ve durdurur.

Stop-service komutu ile bir servisi durdurup, start-services komutu ile bir servisi başlatabilirsiniz.

Komutların bu şekilde benzer yapılarda tanımlanmış olması komutları öğrenmeyi kolaylaştıracaktır.

Get-Command komutuyla kullanılabilir cmdlets komutlarının listesini alabilirsiniz.

Get-Command Verb Get komutuyla Get ile başlayan komutların bir listesini alabilirsiniz.

Örneğin, cmdlet’te Get-Date komutunu deneyelim :

Get-Command ekranında üç sütun vardır :

CommandType (Komut tipi)            Name (İsmi)              Define (Tanımı)

Cmdet’leri listelerken, define sütunu cdmletin söz dizimini gösterir. Söz diziminde birkaç sözcüğün atılması verinin kesildiğini gösterir. Get-Command cmdlet komut aldığı gibi aynı zamanda ve Windows Powershell’deki aliases (takma isimlere), fonksiyonlara ve kullanılabilir hazır dosyalara komut verir.

Aşağıdaki komut , komut elde edebilmek için isim parametrelerinin kullanılarak Windows PowerShell’de kullanılabilen hazır dosyaları listeler.

PS> get-command *.vbs

Name sütunu script dosyalarını listelerken, definition sütunu script dosyalarına ulaşmak için izlenmesi gereken yolu gösterir.

Get-Eventlog komutu ile logları görüntüleyebilirsiniz.

Get-Alias komutu ile tanımlı alias’ları görüntüleyebilirsiniz. 

 

Get-ComputerRestorePoint ile sisteminizdeki geri yükleme noktalarını görüntüleyebilirsiniz.

Basit Get- cmdetler’le ilgili bir sorun yaşamazsak, Get- Wmiobject gibi farklı cdmlet komutlarını da inceleyebiliriz.. Bu cdmlet gayet kullanışlıdır çünkü size diğer bilgisayarlardaki unsurları inceleme ve değiştirme fırsatı verir.

Örneğin : Aşağıdaki komut, server01 adlı bilgisayarın BIOS’u hakkında bilgi toplar :
get-wmiobject win32_bios -computername teknik

get-wmiobject -class Win32_ComputerSystem

Cdmlet ile ilgili yardım almak istersek aşağıdaki satırı kullanmamız yeterli olacaktır.:
get-help -detailed

Örneğin Event ile ilgili yardım bilgilerine ulaşmak için
get-help Event -detailed

Get-help komutunu kullanarak , PowerShell üzerinde kullanılabilecek olan parametrelere ve bu parametrelerin kullanım şekillerine ilişkin yardım alabiliriz. Get-Help komutu, Windows PowerShell’de kavramsal başlıkları ve cmdlet’ler hakkında bilgileri ayrıntılı bir şekilde görüntülemeyi sağlar.
Parametre özellikleri içeren bir cmdlet hakkında ayrıntılı bilgi alabilmek ve örnekleri görüntülüyebilmek için Get-Help komutunun detailed, full, examples, parameter parametrelerinden herhangi birini kullanabiliriz.

Örneğin : get-help get-childitem –examples

Bir makalemizin daha sonuna geldik. Bir sonraki makalemizde PowerShell ile Windows programlarını kullanma ve scripting konularına değineceğim. Herkese iyi çalışmalar.

Yorum Yap