Ek - Gözden Geçirme Sorularının Yanıtları

Bu ek, her bölümün sonunda bulunan inceleme sorularına kısa yanıtlar sağlar. Temel kavramları anlamanızı ve pekiştirmenizi doğrulamak için bunu kullanın.

1. Bölüm - PowerShell'i kullanmaya başlama

  1. $PSVersionTable Otomatik değişkeni kullanın.
  2. Yalnızca yerel bilgisayarda yükseltme gerektiren görevler için Kullanıcı Hesabı Denetimi'ni (UAC) atlamanız gerektiğinde.
  3. Windows istemci sistemlerinde varsayılan yürütme ilkesi, betiklerin çalıştırılmasını engelleyen Restricted'dir.
  4. Geçerli yürütme ilkesini belirlemek için kullanın Get-ExecutionPolicy .
  5. Kullanın Set-ExecutionPolicy (örneğin, Set-ExecutionPolicy -ExecutionPolicy RemoteSigned).

Bölüm 2 - Yardım sistemi

  1. Hayır. öğesininGet-Service DisplayName parametresi konumsal değil adlandırılmıştır.
  2. Get-Process altı parametre kümesine sahiptir.
  3. Get-Command -Noun EventLog adresini kullanın.
  4. Get-Process -Name powershell adresini kullanın.
  5. En son yardım içeriğini indirip yüklemek için Update-Help (Windows PowerShell'de yönetici olarak yükseltilmiş) çalıştırın.

3. Bölüm - Nesneleri, özellikleri ve yöntemleri bulma

  1. Get-Process bir System.Diagnostics.Process nesne üretir.
  2. Komutu Get-Member adresine yönlendirin.
  3. Nesnenin eylemi gerçekleştiren bir yöntemi olup olmadığını denetleyin.
  4. Varsa komutun PassThru parametresini kullanın.
  5. Komutu bir kez çalıştırın ve prototip oluştururken tekrar tekrar büyük miktarda çıkış oluşturmaktan kaçınmak için sonuçları bir değişkende depolayın.

Bölüm 4 - One-Liners ve işlem hattı

  1. PowerShell tek satırlı, kaç fiziksel satıra yayılmış olursa olsun tek bir sürekli işlem hattıdır.
  2. Doğal çizgi sonları, dikey çizgi (|), virgül (,), açılış köşeli parantezler ([ ]), küme parantezleri ({ }) ve parantezler (( )) gibi karakterlerde oluşabilir.
  3. İşlem hattından geçirilen veri miktarını azaltarak performansı ve verimliliği artırmak için sola filtre uygulamalısınız.
  4. Komut, değere (türe göre) veya özellik adına göre işlem hattı girişini kabul edebilir.
  5. PowerShell Galerisi içeriklerinin çoğu topluluk tarafından sağlandığından ve incelenemediğinden, kullanımdan önce gözden geçirilip test edilmelidir.

5. Bölüm - Biçimlendirme, diğer adlar, sağlayıcılar, karşılaştırma

  1. cmdlet'lerin biçimlendirme nesneleri üretmesi, işlem hattını bozarak diğer komutların çoğu tarafından kullanımını engeller.
  2. Gerçek cmdlet'i belirlemek için kullanın Get-Alias -Name % .
  3. Diğer adlar, okunabilirliği ve taşınabilirliği azalttığından dolayı, betiklerin başkaları tarafından anlaşılmasını daha zor hale getirir.
  4. Her iki kovandaki kayıt defteri anahtarlarını listelemek için Get-ChildItem -Path HKLM:\, HKCU:\ kullanın.
  5. İşleç -replace varsayılan olarak büyük/küçük harfe duyarlı değildir, yöntem ise .Replace() büyük/küçük harfe duyarlıdır.

Bölüm 6 - Akış denetimi

  1. ForEach-Object işlem hattından öğeleri birer birer işler (akış), foreach deyimi ise belleğe zaten yüklenmiş olan bir koleksiyondaki öğeleri işler.
  2. Bir while döngüsü, çalıştırılmadan önce koşulunu değerlendirir; bu nedenle, koşul yanlışsa hiç çalışmayabilir, oysa do while ve do until koşul her ne olursa olsun en az bir kez çalışır.
  3. break döngüden tamamen çıkar, continue ise mevcut yinelemeyi atlayıp bir sonrakine geçer.

Bölüm 7 - WMI ile çalışma

  1. WMI cmdlet'leri (örneğin, Get-WmiObject) daha eskidir ve DCOM kullanırken CIM cmdlet'leri (örneğin, Get-CimInstance) daha yenidir ve varsayılan olarak WSMan kullanır.
  2. WSMan (Windows Uzaktan Yönetimi).
  3. CIM oturumları bağlantıların yeniden kullanılmasına izin verir, alternatif kimlik bilgilerini destekler, performansı artırır ve birden çok uzak bağlantıyı yönetmeyi basitleştirir.
  4. DCOM'u kullanmak için bir oturum seçeneği oluşturun ve bunu New-CimSession'e geçirin, ardından bu oturumu Get-CimInstance ile kullanın.
  5. Remove-CimSession adresini kullanın.

8. Bölüm - PowerShell uzaktan iletişim

  1. Enable-PSRemoting adresini kullanın.
  2. Enter-PSSession adresini kullanın.
  3. Her komutla bilgisayar adını ve kimlik bilgilerini belirtmek yerine kalıcı bir oturum kullanmanıza olanak tanır.
  4. Evet, bire bir etkileşimli uzaktan yönetim senaryosunda PowerShell oturumu (PSSession) kullanabilirsiniz.
  5. Yerel olarak çalıştırılan cmdlet'ler yöntemlerle canlı nesneler döndürürken, uzak komutlar seri durumdan çıkarılmış nesneleri yöntemler olmadan döndürür.

Bölüm 9 - İşlevler

  1. Get-Verb adresini kullanın.
  2. özniteliğini [CmdletBinding()] işleve ekleyin.
  3. İşlev sistem durumunda değişiklik yaptığında veya etkili olabilecek eylemler gerçekleştirdiğinde.
  4. -ErrorAction Stop belirtin.
  5. Siz ve diğer kişilerin işlevi kolayca anlayıp Get-Help ile ilgili yardıma erişebilmeniz için nasıl kullanılacağını belgeleyin.

Bölüm 10 - Betik modülleri

  1. Bir .psm1 dosya oluşturun ve işlevlerinizi dosyaya yerleştirin.
  2. Onaylanan fiillerin kullanılması tutarlılık sağlar, uyarılardan kaçınabilir ve bulunabilirliği geliştirir.
  3. New-ModuleManifest adresini kullanın.
  4. Export-ModuleMember etiketini .psm1 dosyasında kullanın veya .psd1 dosyasındaki FunctionsToExport alanında işlevleri belirtin.
  5. Modül, $env:PSModulePath içinde listelenen bir yolda bulunmalı, uygun modül dosyasını (.psm1 veya manifesto) içermeli ve modülle aynı adlı bir klasörde olmalıdır.

Son Notlar

  • Bu yanıtlar, temel kavramları pekiştirmek için kasıtlı olarak kısadır.
  • Daha derin anlamak için bölümleri yeniden ziyaret edin.