Powershell’in çıkmasıyla beraber artık günümüzde command prompt yerine shell çekirdeğini kullanır olduk. Powershell’in 5.0 versiyonuyla beraber bir çok yenilik beraberinde geldi.
Bu makalemizde powershell uygulamaları yaparak, örnekler göreceğiz.
“uGUR”.toupper() : Tümünü büyük yazacaktır. ( UGUR )
“uGUR”.tolower() : Tümünü küçük yazacaktır. ( ugur )
Get-WmiObject win32_bios –computername UGURHOST : Wmi filter kullanarak, localde çalışmış olduğumuz pc ile alakalı bios bilgisini alabiliriz.
Get-WmiObject –Class win32_computersystem : Bilgisayarın bağlı olduğu domain, ram miktarı, üretici firma hakkında bilgi verir.
Import-Module ServerManager : Rol, Feature listesini ve durumları hakkında bilgileri getirir.
Get-WindowsFeature : Rol, Feature listesini ve durumları hakkında bilgileri getirir.
Add-WindowsFeature RSAT-AD-Tools : Feature ya da Rol ekleme yapar. (RSAT ekledik)
Add-WindowsFeature RSAT-ADCS,RSAT-AD-Tools,PowerShell-ISE: Aynı anda birden fazla feature ya da rol eklemek.
Remove-WindowsFeature RSAT-AD-Tools: Bir rol ya da feature kaldırmak.
Get-WindowsFeature | Where {$_.installed –eq $true} : Sadece yüklü olan feature ya da rolleri listeler.
Get-WindowsFeature *AD* | Where {$_.installed –eq $true} : İçerisinde AD geçen ve yüklü olan rol ya da feature’ları listeler.
get-service :Tüm servislerin durumunu gösterir.
get-service M* : M ile başlayan tüm servisleri listeler.
Get-Service M* | Format-List
Get-Service M* | Format-Custom
(M ile başlayan servisleri geniş özetli listeler.)
Get-Service | Get-Member : Servisin üyeliklerini gösterir.
Get-Process | Get-Member : Proseslerin üyeliklerini gösterir.
Değişkene atanan karakterin uzunluğunu görmek.
PS C:\Users\ugurdemi> $z=”Ugur Demir”
PS C:\Users\ugurdemi> $z.Length
10
Değişken içindeki karakter için True/False değerini Almak
PS C:\Users\ugurdemi> $z.Contains(“U”)
True
PS C:\Users\ugurdemi> $z.Contains(“N”)
False
Değişkenle hesaplama işlemleri
PS C:\Users\ugurdemi> $sonuc = (100/2)*3
PS C:\Users\ugurdemi> $sonuc
150
Write-Host ile işlem yapmak.
PS C:\Users\ugurdemi> $a=”Ne iş yapıyorsun? ”
PS C:\Users\ugurdemi> Write-Host $a
Ne iş yapıyorsun?
Değişken ile Network İşlemleri
PS C:\Users\ugurdemi> $ipim=ipconfig
PS C:\Users\ugurdemi> $ipim
Decimal Kavramını Anlamak
[decimal]
Read-Host metodu, bir değişken tanımından sonra kullanıldığı takdirde, ekrana tırnak içerisindeki metini vererek kullanıcıdan bilgi girilmesini ister. Girilen bu bilgi satır başında tanımlanan değişkene atanacaktır.
PS C:\Users\ugurdemi> [decimal]$yaz = Read-Host ” Yasini Gir ”
Yasini Gir : 30
PS C:\Users\ugurdemi> $yaz
30
get-command *komut*: Komut ile ilgili içerikleri,aliasları,diğer komutları vb. çıktısını verir…
get-alias *rmdir* : Cmd’deki komutun karşılığını powershell için verir.
update-help -force : Yeni scriptleri alır. Güncelleme yapar.
get-help *service* :Service komutları hakkında yardım eder.
get-help *process* :Process komutları hakkında yardım eder.
get-help *computer* : Computer komutları hakkında yardım eder.
get-help get-get-service : Get-Service hakkında help verir. Komutlar hakkında get-help komut şeklinde yardım alabiliriz.
get-help get-service -detailed : Get-Service hakkında detaylı help verir. Yukarıdaki gibi komutlar hakkında get-help komut şeklinde yardım alabiliriz. Ancak bu yardım detaylı yardım almamızı sağlar.
get-service : Tüm servisleri listeler.
get-services vds : vds servisini listeler. Sadece bir servisi listeletebiliriz.
get-service -computername WEB2 : Web2 makinesindeki servisleri listeler. Diğer makinadaki servisi listeletmek için kullanırız.
Pipeline ( | )
-Whatif : Displayname’e göre windows isimli servisleri listeler. | işaretinden sonrası servisleri stop eder. Peki bu yazdığım komutun ne işe yaradığını görebilmek adına –whatif’i kullanırım. Çıktısı nedir? Windows ile ilgili olan servisleri stop eder.
-confirm : Displayname’e göre windows isimli servisleri listeler. | işaretinden sonrası servisleri stop eder. Bunların hepsini değilde adım adım görüp kapatmak istersem confirm komutunu kullanırım.
Servis Stop Edip / Start Etmek : İlk komut ile Get-Service stop yada start edilecek servisin adı | işareti sonraıs Stop-Service stop eder, start-Service ise start eder. Ardından aşağıdaki komutla içinde windows geçen servisileri displayname’e göre listeler.
Pipeline ile ilk 5 servisi listelemek, isterseniz aşağıdaki komuttaki 5’i değiştirip 10 yapın.10 servisi listelesin.
CSV olark Export Etmek:
Aşağıdaki komutta servisleri csv olarak export ettim.
Out File ile Dosya Çıktısı Almak:
Aşağıdaki komutta convert ile htmlye çevirip outfile alıyoruz.
Nesneleri Sıralamak:
Aşağıdaki komut ile nesneleri sıralama yapabiliyoruz. İlk 5i sıralıyoruz. –first 5 yerine –skip5 yazarsam ilk 5 servis hariç diğerlerini listeler.
Switch yapısı:
$value= 1 switch ($value) { 1 { “Number 1” } 2 { “Number 2” } 3 { “Number 3” } }
Do While Döngüsü:
Örnek:
do { $Input = Read-Host “Web sayfan” } while (!($Input -like “www.*.*”)) $input
For Döngüsü
Kullanım Biçimi: For (baslangic; kıstas; tekrar) {kod bloğu}
Örnek:
PS C:\Users\ugurdemi> for ($i=1; $i -le 10; $i++) {write-host $i}
Makalemin sonuna geledim, umarım faydalı bir makale olmuştur.