> For the complete documentation index, see [llms.txt](https://phemis.gitbook.io/book/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://phemis.gitbook.io/book/master.md).

# Powershell Notları

## Powershell Nedir ?

**Windows Powershell** , Microsoft tarafından " cmd.exe " ' ye alternatif olarak geliştirilen yeni nesil bir komut satırı uygulamasıdır.

Cmd'den artı olan bir özelliği Unix işletim sisteminin sahip olduğu Terminal'in komutlarını işleyebilmesidir.

İlk olarak Windows Vista ile gelmiş olup devamında ki Windows sürümlerinde de yer alır kendisi..Windows 7 ' de default olarak 2.0 sürümüyle gelen Powershell ' in günümüzde 5.1 sürümü bulunmaktadır. (21.06.2019)

.

.  //Notları Kaybettiğim için bu kısım boş zamanla dolduracağım..

.

## Powershell Scripting

### Karşılaştırma Operatörleri&#x20;

* -eq (Equal To)
* -ne (Not Equal To)
* -lt (Less Than)
* -gt (Greater Than)
* -ge (Greater Than or Equal To)
* -le (Less Than or Equal To)

### If İfadeleri

Syntax :&#x20;

```
if (Koşul)
{
//Koşul doğru ise oynatılacak kod blokları
}
elseif (Koşul) //Eğer yukarıdakine uymazsa bunu kontrol ediyor buna da uymazsa ve başka bir elseif yoksa direkt else'ye atlıyor.
{
//Koşul doğru ise oynatılacak kod blokları
}
else //Bu her ikisine de bağlı olduğu için bir adet kullandık
{
//Koşul yanlış ise oynatılacak kod blokları
}
```

### Döngüler

* For - Each
* While
* For
* Do Until
* Do While

*Bence hepsi aynı işi yapıyor ve dolayısıyla hepsine bakmamız gerekmiyor.*

```
while(koşul)
{
//Koşul sağlanıyorsa dön
}
```

```
for(baslangicdegeri; artmakosulu ; artmasayisi)
{
//Koşul sağlanıyorsa artmasayisi kadar arttır ve dön
}
```

### Parametrelerin işlevleri

![](/files/-LhuGI5G1_oI17s0LFsX)

Script başladığı anda parametre alabilmek için bu kod satırlarını kullandık

Param fonksiyonunu başlattık ve parametrenin özelliğini Parameter() fonksiyonu içerisinde belirttik.

*Mandatory* ' ye true özelliğini attık ve alt satırda alacağımız *$isim* parametresinin string türünde olacağını söyledik.&#x20;

Nedir Mandatory ?  : Kullanıcıdan parametre almayı zorunlu kılan parametredir.
