Geek Okulu Öğrenme PowerShell Değişkenleri, Girdi ve Çıktı
Basit çalışan komutlardan uzaklaştıkça ve tüm betikler yazarken, veriyi saklamak için geçici bir yere ihtiyacınız olacak. Değişkenlerin girdiği yer.
Serideki önceki makaleleri okuduğunuzdan emin olun:
- PowerShell ile Windows'u Nasıl Otomatikleştireceğinizi Öğrenin
- PowerShell'de Cmdlet'leri Kullanmayı Öğrenme
- PowerShell'de Nesnelerin Nasıl Kullanılacağını Öğrenme
- PowerShell'de Biçimlendirme, Filtreleme ve Karşılaştırmayı Öğrenme
- PowerShell'de Uzaktan Kullanmayı Öğrenin
- Bilgisayar Bilgilerini Almak için PowerShell'i Kullanma
- PowerShell'de Koleksiyonlarla Çalışma
Ve tüm hafta boyunca dizinin geri kalanı için bizi izlemeye devam edin.
Değişkenler
Çoğu programlama dili, sadece değerleri tutan kaplar olan değişkenlerin kullanımına izin verir. PowerShell'de bizim de değişkenlerimiz var ve kullanımı gerçekten çok kolay. İşte “FirstName” adlı bir değişkeni nasıl oluşturacağınızı ve “Taylor” değerini nasıl vereceğinizi.
$ FirstName = “Taylor”
Çoğu insanın sorduğu ilk şey, değişken isminin önüne neden 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ğa sadece bir ipucu (kabın içinde ne olduğunu düşünün) ve kabın kendisinde değil. PowerShell'de değişken isimleri dolar işaretini içermez, bu da yukarıdaki örnekte değişken isimlerinin aslında “FirstName” 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:
Yani bir değişkeni kabuktan istediğiniz zaman silebilirsiniz:
Kaldırma Öğesi Değişkeni: \ FirstName
Değişkenlerin de tek bir nesne içermesi gerekmez; bir değişkende birden çok nesneyi kolayca saklayabilirsiniz. Örneğin, bir değişkende çalışan işlemlerin listesini saklamak istiyorsanız, sadece Get-Process'in çıktısını atayabilirsiniz.
$ Proc = Get-Process
Bunu anlamanın püf noktası, eşittir işaretinin sağ tarafının her zaman ilk önce değerlendirildiğini hatırlamaktır. Bu, eğer isterseniz, sağ tarafta bütün bir boru hattına sahip olabileceğiniz anlamına gelir..
$ CPUHogs = İşlem Al | İşlemci Sıralaması | -İlk 3'ü seçin
CPUHogs değişkeni şimdi en fazla CPU kullanan üç çalışan işlemi içerecek.
Bir nesne koleksiyonunu tutan bir değişkeniniz olduğunda, dikkat edilmesi gereken bazı şeyler vardır. Örneğin, değişkende bir yöntem çağırmak, koleksiyondaki her nesnede çağrılmasına neden olur.
$ CPUHogs.Kill ()
Koleksiyondaki her üç süreci de öldürür. Değişkendeki tek bir nesneye erişmek istiyorsanız, ona bir dizi gibi davranmanız gerekir..
$ CPUHogs [0]
Bunu yapmak koleksiyondaki ilk nesneyi size verecek.
Yakalanma!
PowerShell'deki değişkenler varsayılan olarak zayıf yazılmıştır, yani herhangi bir tür veri içerebilirler, bu PowerShell'e her zaman yeni gelenleri yakalar gibi görünüyor!
a = 10
$ b = '20'
Dolayısıyla iki değişkenimiz var, biri dize, diğeri tam sayı içeriyor. Peki onları eklerseniz ne olur? Bu, onları hangi sırayla eklediğinize bağlı olarak değişir..
$ a + $ b = 30
Süre
$ b + $ a = 2010
İlk örnekte, ilk işlenen bir tamsayıdır, $ a, bu nedenle PowerShell matematik yapmaya çalıştığınızı düşünüyor ve bu nedenle diğer işlenenleri de tam sayılara dönüştürmeye çalışıyor. Bununla birlikte, ikinci örnekte ilk işlenen bir dizgedir, bu nedenle PowerShell sadece işlenenlerin geri kalanını dizgelere dönüştürür ve birleştirir. Daha gelişmiş scriptler, değişkeni bekledikleri tipe çevirerek bu tür kazanımları önler.
[int] $ Sayı = 5
[int] $ Sayı = '5'
Yukarıdakilerin her ikisi de 5 değerinde bir tamsayı nesnesi içeren Sayı değişkeniyle sonuçlanır..
Giriş ve çıkış
PowerShell bir şeyleri otomatikleştirmek için tasarlandığından, mümkün olan her yerde kullanıcıları bilgi almaktan kaçınmak isteyeceksiniz. Bununla birlikte, bundan kaçınamayacağınız zamanlar olacak ve o zamanlar için Read-Host cmdlet'iniz var. Kullanımı gerçekten çok basit:
$ FirstName = Okuma-Host -Prompt 'İlk adınızı giriniz'
Girdiğiniz ne olursa olsun değişkene kaydedilir..
Yazma çıktısı, Yazma Çıktı cmdleti ile aynı derecede kolaydır.
Yazma Çıktısı “Nasıl Yapılır Geek Kayalar!”
Birlikte öğrendiklerimizi bağladığımız yarın bize katılın!