Rehber Powershell ile çekiliş nasıl yapılır?

Herkese merhabalar,

Malum bazen rastgele bir seçim yapmamız gereken durumlar olabiliyor. Bu durumlardan birisi de örneğin rastgele bir sayı almak veya adaylar arasından rastgele birilerini seçmek.

İnternet üzerinden bir sürü araç var ancak bunların hiçbirine ihtiyaç duymadan 2-3 satır kod ile Powershell üzerinden zaten Microsoft çekiliş yapmamıza olanak sağlıyor.

Powershell üzerinden kullanacağımız bugün ki kütüphanemiz Get-Random olacak.

Get-Random ile kolaylıkla rastgele işlemler yapabiliriz. Bu işlemlerden bir tanesi de çekiliş olacak.

Örneğin 1 ile 50 arasında rastgele bir sayı oluşturmak istiyoruz.

Burada -Minimum parametresi ile başlangıcı, -Maximum parametresi ile de en son kaç olacak onu belirliyoruz.

[CODE lang="bash" title="rastgele bir sayı"]Get-Random -Minimum -100 -Maximum 100[/CODE]


Aynı şekilde Microsoft bize bu kütüphane ile rastgele metinler arasından da seçimler yapmaya fırsat veriyor.

Örneğin Can, Bozkurt ve Baybars arasından rastgele bir tanesini seçmek istediğimiz de şu kodu kullanıyoruz. (Baybars çok şanslıymış )

[CODE lang="bash" title="rastgele metin seçmek"]"Can", "Bozkurt", "Baybars" | Get-Random[/CODE]




Şimdi buraya kadar kodun basit mantığını anladığımıza göre 2-3 farklı işlem yaparak cekilis.txt dosyasında yazan isimleri powershell üzerinden bir değişken içerisine atacağız ve daha sonra bu değişken içerisinde her bir satırı Get-Random ile rastgelelik üzerinden seçip ekrana yazdıracağız.

Powershell yardımıyla bir metin belgesi içindeki verileri almak için Get-Content kütüphanesini kullanıyoruz.
Daha sonra çektiğimiz verileri ekrana yazdıralım. Bunu da Write-Output ile yapmaktayız.

[CODE lang="bash" title="verileri içeri aktarma"]
$cekilis_veri = Get-Content -Path "cekilis.txt"
Write-Output $cekilis_veri
[/CODE]


Şimdi tek yapmamız gereken Get-Random kütüphanesi ile bu veriler içinden rastgelelik prensibi ile bir veriyi seçip ekrana yazdırmak olacaktır.

[CODE lang="bash" title="kazanan belirleme"]$kazanan = $cekilis_veri | Get-Random
Write-Output "Kazanan Kişi : $kazanan, Tebrikler!"[/CODE]

 
Bunu internet üzerinden veriyi alacak şekilde yapmak mümkün mü?
 
Bunu internet üzerinden veriyi alacak şekilde yapmak mümkün mü?

Merhaba, evet mümkün. Web Request kütüphanesi üzerinden veriyi çekebilirsiniz. Şu an mobildeyim kod örneğini bilgisayara geçince paylaşırım.

Bunu internet üzerinden veriyi alacak şekilde yapmak mümkün mü?

Merhaba,

Burada ornek.com / cekilist.txt ile dosyanın adresini belirtiyoruz sonrasında uzaktaki dosyanın hangi ad ile kaydedileceğini belirtip aynı şekilde konuda anlattığım şekilde Get-Random ile yine kazanan belirliyoruz. Tek fark uzaktan WebRequest ile dosya çekmek.

[CODE lang="bash" title="uzaktan veri çekip çekiliş yapma"]$adres = "https://ornek.com/cekilist.txt"
$dosya_kaydet = "cekilis.txt"
$katilimcilar = Invoke-WebRequest -Uri $adres -OutFile $dosya_kaydet | Get-Content
$kazanan = $katilimcilar | Get-Random
Write-Output "Kazanan: $kazanan"[/CODE]

Kütüphaneyle ilgili daha fazla bilgi edinmek isterseniz :

 
Son düzenleme:
Teşekkür ederim
 

PowerShell programming language olsun(!)
 
Bu siteyi kullanmak için çerezler gereklidir. Siteyi kullanmaya devam etmek için çerezleri kabul etmelisiniz. Daha Fazlasını Öğren.…