Windows Server

Powershell Uygulamaları

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 )

clip_image002

“uGUR”.tolower() : Tümünü küçük yazacaktır. ( ugur )

clip_image004

Get-WmiObject win32_bios –computername UGURHOST : Wmi filter kullanarak, localde çalışmış olduğumuz pc ile alakalı bios bilgisini alabiliriz.

clip_image006

Get-WmiObject –Class win32_computersystem : Bilgisayarın bağlı olduğu domain, ram miktarı, üretici firma hakkında bilgi verir.

clip_image008

Import-Module ServerManager : Rol, Feature listesini ve durumları hakkında bilgileri getirir.

clip_image010

Get-WindowsFeature : Rol, Feature listesini ve durumları hakkında bilgileri getirir.

clip_image012

Add-WindowsFeature RSAT-AD-Tools :  Feature ya da Rol ekleme yapar. (RSAT ekledik)

clip_image014

Add-WindowsFeature RSAT-ADCS,RSAT-AD-Tools,PowerShell-ISE: Aynı anda birden fazla feature ya da rol eklemek.

clip_image016

Remove-WindowsFeature RSAT-AD-Tools: Bir rol ya da feature kaldırmak.

clip_image018

Get-WindowsFeature | Where {$_.installed –eq $true} : Sadece yüklü olan feature ya da rolleri listeler.

clip_image020

Get-WindowsFeature *AD* | Where {$_.installed –eq $true} : İçerisinde AD geçen ve yüklü olan rol ya da feature’ları listeler.

clip_image022

get-service  :Tüm servislerin durumunu gösterir.

clip_image024

get-service M*  : M ile başlayan tüm servisleri listeler.

clip_image026

 

Get-Service M* | Format-List
Get-Service M* | Format-Custom

(M ile başlayan servisleri geniş özetli listeler.)

clip_image028

clip_image030

Get-Service | Get-Member  : Servisin üyeliklerini gösterir.

clip_image032

Get-Process | Get-Member  : Proseslerin üyeliklerini gösterir.

clip_image034

 

Değişkene atanan karakterin uzunluğunu görmek.

PS C:\Users\ugurdemi> $z=”Ugur Demir”
PS C:\Users\ugurdemi> $z.Length
10

clip_image036

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

clip_image038

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?

clip_image040

Değişken ile Network İşlemleri

PS C:\Users\ugurdemi> $ipim=ipconfig
PS C:\Users\ugurdemi> $ipim
clip_image042

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
clip_image044

 

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.

İlgili Makaleler

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Başa dön tuşu