27Jul

Geek Okulu: PowerShell Değişkenlerini Öğrenme, Giriş ve Çıkış

Yalnızca komutları çalıştırmadan ve tam üfleme komut dosyalarına geçmeden hareketle, verileri depolamak için geçici bir yere ihtiyacınız olacaktır.

Serideki önceki makaleleri okuduğunuzdan emin olun:

  • Windows'u PowerShell ile Otomatikleştirme Nasıl Öğrenileceğini Öğrenin
  • PowerShell'de Cmdlet Kullanmayı Öğrenin
  • PowerShell'de Nesneleri Nasıl Kullanacağınızı Öğrenin
  • Öğrenme Biçimlendirme, Filtreleme ve KarşılaştırmaPowerShell
  • PowerShell'de Uzak Kullanmayı Öğrenin
  • Bilgisayar Bilgilerini Almak İçin PowerShell'i Kullanma
  • PowerShell'de Koleksiyonlarla Çalışma

Serinin diğer bölümleri için bütün hafta boyunca durmalısınız.

Değişkenleri

Çoğu programlama dili, değerleri tutan basitçe kapsayıcı olan değişkenlerin kullanılmasına izin verir. PowerShell'de de değişkenlerimiz var ve kullanımı gerçekten kolaydır.İşte "FirstName" adlı bir değişkeni yaratmak ve "Taylor" değerini vermek.

$ FirstName = "Taylor"

Çoğu kişinin sorması gereken ilk şey, neden değişken adının önünde bir dolar işareti koyduğumuzdur ve bu aslında çok iyi bir sorudur. Gerçekten, dolar işareti, değişkenin içeriğine erişmek istediğimiz kabuğun küçük bir ipucu( konteyner içinde ne olduğunu düşünün) ve konteynırın kendisi değil. PowerShell'de, değişken adları dolar işaretini içermez, yani yukarıdaki örnekte değişken adının aslında "İsim" olduğu anlamına gelir.

PowerShell'de, oluşturduğunuz tüm değişkenleri PSDrive değişkeninde görebilirsiniz.

gci değişkeni:

Herhangi bir zamanda bir değişkeni daima kabuktan silebilirsiniz demektir:

Remove-Item Değişken: \ FirstName

Değişkenlerin tek bir nesne içermesi gerekmez;birden çok nesneyi bir değişkende kolayca depolayabilirsiniz.Örneğin, çalışan bir işlem listesini bir değişkende saklamak isterseniz, Get-Process çıktısını atamanız yeterlidir.

$ Proc = Get-Process

Bunu anlama hilesiz şey, eşitlik işaretinin sağ tarafının daima önce değerlendirildiğini hatırlamaktır. Bu, eğer isterseniz sağ tarafta bir boru hattına sahip olabileceğiniz anlamına gelir.

$ CPUHogs = Get-Process |CPU'yu sıralama - Sürüklenmekte olan |select -First 3

CPUHogs değişkeni artık en fazla CPU kullanan üç çalışan işlemi içerecektir.

Nesneler koleksiyonunu tutan bir değişkeniniz olduğunda, farkında olduğunuz bazı şeyler vardır.Örneğin, değişken üzerinde bir yöntem çağırmak, koleksiyondaki her nesne üzerinde çağrılmasına neden olur.

$ CPUHogs. Kill()

Koleksiyondaki üç işlemi de öldürürdü.Değişkendeki tek bir nesneye erişmek isterseniz, onu bir dizi gibi değerlendirmeniz gerekir.

$ CPUHogs [0]

Bunu yapmak, koleksiyonda ilk nesneyi size verecektir.

Yakalanmayın!

PowerShell'deki değişkenler varsayılan olarak her türden verileri içerebilecek şekilde yazılmışlardır; bu, her zaman PowerShell'e yeni gelenler yakalamaktadır!

$ a = 10

$ b = '20'

Dolayısıyla birinde bir dize, diğeri de bir tamsayı olmak üzere iki değişkenimiz var. Peki onları eklerseniz ne olacak? Aslında bunları hangi sıraya eklediğinize bağlıdır.

$ a + $ b = 30

$ b + $ a = 2010

iken PowerShell düşünen düşünen ilk operand, $ a bir tamsayıdırmatematiği yapmaya çalışıyorsunuz ve bu nedenle diğer tüm işlenenleri de tamsayılara çevirmeye çalışıyorsunuz. Ancak, ikinci örnekte, ilk işlenen bir dizedir, bu nedenle PowerShell yalnızca işlenen kalanlarını dizelere dönüştürür ve birleştirir. Daha gelişmiş scripters değişken bekliyor türü atarak bu gotcha önlemek.

[int] $ Sayı = 5
[int] $ Sayı = '5'

Yukarıdakilerin her ikisi de 5 değerine sahip bir tamsayı nesnesi içeren Sayı değişkeniyle sonuçlanır.

Giriş ve Çıkış

PowerShell şeyleri otomatikleştirmek için tasarlanmıştır, kullanıcıların mümkün olduğunca bilgi istemekten kaçınmasını isteyeceksiniz. Bununla, kaçınamayacağınız zamanlar olacak ve o zamanlar Read-Host cmdlet'imiz var. Kullanımı gerçekten basit:

$ FirstName = Read-Host -Prompt 'İlk adınızı girin'

Girdiğiniz her şey daha sonra değişkene kaydedilir.

Yazma çıktısı, Write-Output cmdlet'inde olduğu kadar kolaydır.

Yaz Çıkış "Nasıl Yapılır Geek Kayaları!"

Yarın bir araya geldiğimiz her şeyi birlikte bulduğumuz yere katılın!