PowerShell Operatorleri – Part 3 – Mantiksal Operatorler

AND verilen iki degiskenin ayni anda (A ve B) bir degere sahip olmasi kosulunu temsil eder. Yani $A -AND $B komutu aslinda hem A hem de B’nin bir degere sahip olup olmadigini sorgulamak icin kullanilir. Bizim ornegimizde A ve B iclerinde deger barindirirken C barindirmaz. Bu sebeple ikinci ornekte sonuc $false olur.

OR verilen iki degiskenden birinin (A veya B) bir degere sahip olmasi kosulunu temsil eder. Yani $A -OR $B komutu aslinda A ya da B’nin bir degere sahip olup olmadigini sorgulamak icin kullanilir. Yani verilen iki degiskenden bir tanesinin bir degere sahip olmasi $true sonucunun dondurulmesi icin yeterlidir. Son denemeye ($C -OR $D) dikkat!

NOT Bu operator onunde geldigi ifadeleri olumsuz yapmak icin kullanilir. AND ya da OR ile birlikte kullanilabilir.

Continue Reading PowerShell Operatorleri – Part 3 – Mantiksal Operatorler

Linux (Ubuntu 18.04) Uzerinde PowerShell 7 Kurulumu

PowerShell 7’nin en onemli ozelligi hic kuskusuz butun platformlarda calisabiliyor olmasi. Son 13 yildir giderek artan PowerShell kullanimi eminim ki bundan sonra cok daha hizli sekilde artacaktir.
Windows uzerinde PowerShell kullanimi zaten oldukca yaygin ancak Linux uzerinde durum nasil?
PowerShell Core 6.x surumu ve sonrasi Linux uzerinde desteklendigi icin son 1-2 yildir kullaniminda bir artis oldugunu soyleyebiliriz. PowerShell 7’nin tum platformlar icin tek bir surum olarak cikmasi elbette genel olarak bir kaldirac etkisi yaratacaktir diye dusunuyorum.
Peki Linuz uzerinde PowerShell 7’yi nasil yukleyip kullanmaya baslayabiliriz?
Aslinda son derece kolay cunku 5 basit komutla 1 dakika icinde PowerShell 7’i yukleyip kullanmaya baslamak mumkun.
 
Oncelikle asagidaki komutla Microsoft repository GPG anahtarlarini indiriyoruz.
wget -q https://packages.microsoft.com/config/ubuntu/18.04/packages-microsoft-prod.deb
 
Sonraki adimda indiridigimiz bu anahtarlari register ediyoruz.
sudo dpkg -i packages-microsoft-prod.deb
 
apt-get update komutu ile repositorileri guncelliyoruz.
sudo apt-get update
 
“universe” repository’sini aktif hale getiriyoruz.
sudo add-apt-repository universe
 
Artik PowerShell 7’yi yuklemeye haziriz.
sudo apt-get install -y powershell
 
Yukleme tamamlandiginda PS7’yi calistirabiliriz.
Pwsh
Hosgeldin PowerShell 7!

Bu arada isterseniz asagidaki komutlari kullanarak direkt olarak PowerShell 7’yi download ederek de yukleme yapabilirsiniz.
sudo dpkg -i powershell_7.0.0-1.ubuntu.18.04_amd64.deb
sudo apt-get install -f

Continue Reading Linux (Ubuntu 18.04) Uzerinde PowerShell 7 Kurulumu

PowerShell 7 ForEach Parallel Opsiyonu ile Hiziniza Hiz Katin!

PowerShell 7 ile birlikte Foreach-Object icin “-Parallel” ozelligi geldi. Bu ozellik ile foreach dongusu icinde ayni anda yani paralleled birden fazla islemi yaptirmak mumkun olabiliyor. Bu da hiz acisindan inanilmaz performansli. Elbette her durum icin uygun olmayabilir ancak birbirinden bagimsiz islemleri hizli bir sekilde yaptirmak isterseniz ve kaynaklariniz da bunun icin elverisliyse o zaman Paralel kullanimini dusunebilirsiniz.
Bunu bir ornekle ele alalim oyleyse.
Once Paralel ozelligini kullanmadan deneyelim ve islemlerin birer birer ve sirayla yapildigina dikkat edelim.

Simdi de parallel ozelligini devreye alalim ve throttle limit ozelligi ile maksimum CPU core destegini kullanalim. 100 vermemin sebebi zaten sistemdeki olabilecek maksimum core adedinin kullanilmasini saglamak. Zaten PowerShell sadece olabilecek en yuksek rakami kullanacak ve gerisini systemin calisabilmesi icin isletim sistemine birakacaktir.

Fark inanilmaz!
Bir de Paralel kullanimi ile islemlerin topluca, ayni anda paralleled ve daginik bir sirayla yapildigina dikkat edelim. Bunu da su ornekle gostereyim.

Continue Reading PowerShell 7 ForEach Parallel Opsiyonu ile Hiziniza Hiz Katin!

Linux uzerinde PowerShell ile bir servisin detaylarini goruntuleme

PowerShell’in kolay kullanimligi ve operasyonelligini Linux uzerinde de yasayabilirsiniz. Ornek olarak bir servisin durumunu PowerShell ile sorgulamak isterseniz asagidaki basit fonksiyonu kullanabilirsiniz. “Ayni isi ben zaten systemctl’yi direkt kullanarak da yapabiliyorum” diyebilirsiniz. Kesinlikle katiliyorum; ancak PowerShell’e liskin biriyseniz tum isleri onunla yapmak isteyebiliyorsunuz. Benden hatirlatmasi
[crayon]
function Get-Service {
param (
[string]$ServiceName
)
if ((systemctl is-active $ServiceName) -eq ‘active’)
{
systemctl status $Servicename
}
else
{
“$ServiceName is not active or not found”
}
}
[/crayon]
Get-Service -ServiceName ssh

Continue Reading Linux uzerinde PowerShell ile bir servisin detaylarini goruntuleme