Yardım sistemi
PowerShell yeterliliğini değerlendirmek için tasarlanan bir deneyde, iki farklı BT uzmanı grubuna (yeni başlayanlar ve uzmanlar) ilk olarak bilgisayara erişimleri olmadan yazılı bir sınav verildi. Şaşırtıcı bir şekilde, test puanları her iki grupta da karşılaştırılabilir beceriler gösterdi. Daha sonra, ilkini yansıtan ancak önemli bir farkla başka bir test uygulandı: Katılımcıların PowerShell ile donatılmış çevrimdışı bir bilgisayara erişimi vardı. Sonuçlar bu sefer iki grup arasında önemli bir beceri açığı olduğunu ortaya çıkardı.
İki değerlendirme arasında gözlemlenen sonuçlara hangi faktörler katkıda bulundu?
Uzmanlar her zaman cevapları bilmeyebilirler ama cevapları nasıl bulacaklarını biliyorlar.
İki testin sonuçlarında gözlemlenen sonuçlar, uzmanların binlerce PowerShell komutunu ezberlememesiydi. Bunun yerine, PowerShell içindeki Yardım sistemini kullanma konusunda uzmanlaşıyorlar ve gerektiğinde komutları nasıl kullanacaklarını keşfetmelerine ve öğrenmelerine olanak tanıyorlar.
Yardım sisteminde uzmanlaşmak PowerShell'de başarının anahtarıdır.
PowerShell'in yaratıcısı Jeffrey Snover'ın benzer bir hikayeyi birçok kez paylaştığını duydum.
Keşfedilebilirlik
PowerShell'de derlenen komutlar cmdlet'ler olarak bilinir ve "CMD-let" olarak değil, "command-let" olarak telaffuz edilir. Cmdlet'lerin adlandırma kuralı, bunların kolayca keşfedilebilmesini sağlamak için tekil bir Fiil-İsim biçimini izler. Örneğin, Get-Process hangi işlemlerin çalıştığını belirleyen cmdlet'tir ve Get-Service hizmetlerin listesini almak için kullanılan cmdlet'tir. Komut dosyası cmdlet'leri olarak da bilinen işlevler ve takma adlar, bu kitabın ilerleyen kısımlarında ele alınacak diğer PowerShell komut türleridir. "PowerShell komutu" terimi, cmdlet, işlev veya takma ad olmasına bakılmaksızın PowerShell'deki herhangi bir komutu açıklar.
Ayrıca ping.exe ve ipconfig.exe gibi geleneksel komut satırı programları gibi işletim sistemi yerel komutlarını PowerShell'den çalıştırabilirsiniz.
PowerShell'deki üç temel cmdlet'ler
Get-HelpGet-CommandGet-Member (bölüm 3'te ele alınmıştır)Bana sık sık şu soru soruluyor: "PowerShell'deki komutların ne olduğunu nasıl anlarsınız?". Hem Get-Help hem de Get-Command, PowerShell'deki komutları keşfetmeye ve anlamaya yönelik çok değerli kaynaklardır.
Get-Help
PowerShell'deki Yardım sistemi hakkında bilmeniz gereken ilk şey Get-Help cmdlet'inin nasıl kullanılacağıdır.
Get-Help, komutları bulduğunuzda nasıl kullanacağınızı öğrenmenize yardımcı olan çok amaçlı bir komuttur. Komutları bulmak için Get-Help komutunu da kullanabilirsiniz, ancak bu, Get-Command ile karşılaştırıldığında farklı ve daha dolaylı bir yöntemdir.
Komutları bulmak için Get-Help kullanıldığında, başlangıçta girişinize göre komut adları için joker karakter araması yapılır. Bu herhangi bir eşleşme bulamazsa sisteminizdeki tüm PowerShell yardım makalelerinde kapsamlı bir tam metin araması gerçekleştirir. Bu da herhangi bir sonuç bulamazsa, bir hata döndürür.
Get-Help cmdlet'inin yardım içeriğini görüntülemek için Get-Help'i nasıl kullanacağınız aşağıda açıklanmıştır.
Get-Help -Name Get-Help
PowerShell sürüm 3.0'dan itibaren yardım içeriği işletim sistemiyle önceden yüklenmiş olarak gönderilmez. Get-Help'i ilk kez çalıştırdığınızda, PowerShell yardım dosyalarını bilgisayarınıza indirmek isteyip istemediğinizi soran bir mesaj görüntülenir.
Y tuşuna basılarak Evet yanıtı verilmesi, Update-Help cmdlet'ini çalıştırarak yardım içeriğini indirir.
Do you want to run Update-Help?
The Update-Help cmdlet downloads the most current Help files for Windows
PowerShell modules, and installs them on your computer. For more information
about the Update-Help cmdlet, see
https:/go.microsoft.com/fwlink/?LinkId=210614.
[Y] Yes [N] No [S] Suspend [?] Help (default is "Y"):
Bu mesajı almazsanız yönetici olarak çalışan yükseltilmiş bir PowerShell oturumundan Güncelleme-Yardım komutunu çalıştırın.
Güncelleme tamamlandığında yardım makalesi görüntülenir.
Örneği bilgisayarınızda çalıştırmak için bir dakikanızı ayırın, çıktıyı inceleyin ve yardım sisteminin bilgileri nasıl düzenlediğini gözlemleyin.
- İSİM
- ÖZET
- SÖZDİZİMİ
- TANIM
Çıktıyı incelerken, yardım makalelerinin genellikle çok büyük miktarda bilgi içerdiğini ve varsayılan olarak gördüğünüz şeyin yardım makalesinin tamamı olmadığını unutmayın.
Parametreler
PowerShell'de bir komut çalıştırdığınızda komuta ek bilgi veya giriş sağlamanız gerekebilir. Parametreler, bir komutun davranışını değiştiren seçenekleri ve bağımsız değişkenleri belirtmenize olanak tanır. Her yardım makalesinin SÖZ DİZİMİ bölümünde komut için kullanılabilen parametreler özetlenir.
Get-Help, yardım makalesinin tamamını veya bir komutun alt kümesini döndürmek için belirtebileceğiniz çeşitli parametrelere sahiptir.Get-Helpiçin mevcut tüm parametreleri görüntülemek üzere, aşağıdaki örnekte gösterildiği gibi yardım makalesinin Sözdizimi bölümüne bakın.... SYNTAX Get-Help [[-Name] <System.String>] [-Category {Alias | Cmdlet | Provider | General | FAQ | Glossary | HelpFile | ScriptCommand | Function | Filter | ExternalScript | All | DefaultHelp | Workflow | DscResource | Class | Configuration}] [-Component <System.String[]>] [-Full] [-Functionality <System.String[]>] [-Path <System.String>] [-Role <System.String[]>] [<CommonParameters>] Get-Help [[-Name] <System.String>] [-Category {Alias | Cmdlet | Provider | General | FAQ | Glossary | HelpFile | ScriptCommand | Function | Filter | ExternalScript | All | DefaultHelp | Workflow | DscResource | Class | Configuration}] [-Component <System.String[]>] -Detailed [-Functionality <System.String[]>] [-Path <System.String>] [-Role <System.String[]>] [<CommonParameters>] Get-Help [[-Name] <System.String>] [-Category {Alias | Cmdlet | Provider | General | FAQ | Glossary | HelpFile | ScriptCommand | Function | Filter | ExternalScript | All | DefaultHelp | Workflow | DscResource | Class | Configuration}] [-Component <System.String[]>] -Examples [-Functionality <System.String[]>] [-Path <System.String>] [-Role <System.String[]>] [<CommonParameters>] Get-Help [[-Name] <System.String>] [-Category {Alias | Cmdlet | Provider | General | FAQ | Glossary | HelpFile | ScriptCommand | Function | Filter | ExternalScript | All | DefaultHelp | Workflow | DscResource | Class | Configuration}] [-Component <System.String[]>] [-Functionality <System.String[]>] -Online [-Path <System.String>] [-Role <System.String[]>] [<CommonParameters>] Get-Help [[-Name] <System.String>] [-Category {Alias | Cmdlet | Provider | General | FAQ | Glossary | HelpFile | ScriptCommand | Function | Filter | ExternalScript | All | DefaultHelp | Workflow | DscResource | Class | Configuration}] [-Component <System.String[]>] [-Functionality <System.String[]>] -Parameter <System.String> [-Path <System.String>] [-Role <System.String[]>] [<CommonParameters>] Get-Help [[-Name] <System.String>] [-Category {Alias | Cmdlet | Provider | General | FAQ | Glossary | HelpFile | ScriptCommand | Function | Filter | ExternalScript | All | DefaultHelp | Workflow | DscResource | Class | Configuration}] [-Component <System.String[]>] [-Functionality <System.String[]>] [-Path <System.String>] [-Role <System.String[]>] -ShowWindow [<CommonParameters>] ...Parametre setleri
Get-Helpiçin SÖZ DİZİMİ bölümünü incelediğinizde, bilgilerin altı kez tekrarlandığına dikkat edin. Bu blokların her biri ayrı bir parametre kümesidir veGet-Helpcmdlet'inin altı farklı parametre kümesi içerdiğini gösterir. Daha yakından bakıldığında, her parametre setinin en az bir benzersiz parametre içerdiği ve bu parametre setini diğerlerinden farklı kıldığı ortaya çıkar.Parametre setleri birbirini dışlar. Yalnızca bir parametre kümesinde bulunan benzersiz bir parametreyi belirttiğinizde PowerShell sizi bu parametre kümesinde yer alan parametreleri kullanacak şekilde sınırlandırır. Örneğin,
Get-Help'in Tam ve Ayrıntılı parametrelerini birlikte kullanamazsınız çünkü bunlar farklı parametre kümelerine aittir.Aşağıdaki parametrelerin her biri
Get-Helpcmdlet'i için farklı bir parametre kümesine aittir.- Tam dolu
- Ayrıntılı
- Örnekler
- Çevrimiçi
- Parametre
- ShowWindow
Komut sözdizimi
PowerShell'de yeniyseniz, SÖZDİZİMİ bölümündeki (köşeli ve köşeli ayraçlarla karakterize edilen) şifreli bilgileri anlamak çok zor görünebilir. Ancak bu sözdizimi öğelerini öğrenmek, PowerShell konusunda uzmanlaşmak için çok önemlidir. PowerShell Yardım sistemini ne kadar sık kullanırsanız tüm nüansları hatırlamak o kadar kolay olur.
Get-EventLog cmdlet'inin sözdizimini görüntüleyin.
Get-Help Get-EventLog
Aşağıdaki çıktı yardım makalesinin ilgili bölümünü göstermektedir.
...
SYNTAX
Get-EventLog [-LogName] <System.String> [[-InstanceId]
<System.Int64[]>] [-After <System.DateTime>] [-AsBaseObject] [-Before
<System.DateTime>] [-ComputerName <System.String[]>] [-EntryType {Error
| Information | FailureAudit | SuccessAudit | Warning}] [-Index
<System.Int32[]>] [-Message <System.String>] [-Newest <System.Int32>]
[-Source <System.String[]>] [-UserName <System.String[]>]
[<CommonParameters>]
Get-EventLog [-AsString] [-ComputerName <System.String[]>] [-List]
[<CommonParameters>]
...
Sözdizimi bilgileri köşeli parantez çiftlerini ([]) içerir. Kullanımlarına bağlı olarak bu köşeli parantezler iki farklı amaca hizmet eder.
- Köşeli parantez içindeki öğeler isteğe bağlıdır.
<string[]>gibi bir veri tipinin ardından gelen boş köşeli parantez seti, parametrenin bir dizi veya koleksiyon nesnesi olarak iletilen birden fazla değeri kabul edebileceğini gösterir.
Konumsal parametreler
Bazı cmdlet'ler konumsal parametreleri kabul edecek şekilde tasarlanmıştır. Konumsal parametreler, parametrenin adını belirtmeden bir değer sağlamanıza olanak tanır. Bir parametreyi konumsal olarak kullanırken, değerini komut satırında doğru konumda belirtmeniz gerekir. Bir parametrenin konum bilgilerini, komutun yardım makalesinin PARAMETRELER bölümünde bulabilirsiniz. Parametre adlarını açıkça belirttiğinizde parametreleri istediğiniz sırayla kullanabilirsiniz.
Get-EventLog cmdlet'i için ilk parametre kümesindeki ilk parametre LogName'dir. GünlükAdı, konumsal bir parametre olduğunu belirtmek üzere köşeli parantez içine alınmıştır.
Get-EventLog [-LogName] <System.String>
LogName konumsal bir parametre olduğundan, bunu ada veya konuma göre belirtebilirsiniz. Parametre adının ardından gelen açılı ayraçlara göre LogName değeri tek bir dize olmalıdır. Hem parametre adını hem de veri türünü kapsayan köşeli parantezlerin bulunmaması, GünlükAdı'nın bu özel parametre kümesinde gerekli bir parametre olduğunu gösterir.
Bu parametre kümesindeki ikinci parametre InstanceId'dir. Hem parametre adı hem de veri türü tamamen köşeli parantez içine alınmıştır; bu, InstanceId'in isteğe bağlı bir parametre olduğunu gösterir.
[[-InstanceId] <System.Int64[]>]
Ayrıca, InstanceId'in kendi köşeli parantez çifti vardır; bu, onun LogName parametresine benzer konumsal bir parametre olduğunu gösterir. Veri türünün ardından gelen boş köşeli parantez kümesi, InstanceId'in birden fazla değeri kabul edebileceğini belirtir.
Parametreleri değiştir
Değer gerektirmeyen bir parametreye anahtar parametresi denir. Parametre adını takip eden bir veri türü olmadığından anahtar parametrelerini kolayca tanımlayabilirsiniz. Bir anahtar parametresi belirttiğinizde değeri true olur. Bir anahtar parametresi belirtmediğinizde değeri false olur.
İkinci parametre seti, bir anahtar parametresi olan Liste parametresini içerir. List parametresini belirttiğinizde, yerel bilgisayardaki olay günlüklerinin bir listesini döndürür.
[-List]
Sözdizimine basitleştirilmiş bir yaklaşım
Düz İngilizce dışında, bazı komutlar için şifreli komut sözdizimiyle aynı bilgileri elde etmenin daha kullanıcı dostu bir yöntemi vardır. PowerShell, Tam parametresiyle Get-Help kullanıldığında yardım makalesinin tamamını döndürerek komutun kullanımının anlaşılmasını kolaylaştırır.
Get-Help -Name Get-Help -Full
Bilgisayarınızdaki örneği çalıştırmak için bir dakikanızı ayırın, çıktıyı gözden geçirin ve yardım sisteminin bilgileri nasıl düzenlediğini gözlemleyin.
- İSİM
- ÖZET
- SÖZDİZİMİ
- TANIM
- PARAMETRELER
- GİRİŞLER
- ÇIKIŞLAR
- NOTLAR
- ÖRNEKLER
Get-Helpcmdlet'iyle Full parametresini belirterek, çıktı birkaç ekstra bölüm içerir. Bu bölümler arasında PARAMETRELER genellikle her parametre için ayrıntılı bir açıklama sağlar. Ancak bu bilginin kapsamı, araştırdığınız belirli komuta bağlı olarak değişir.... -Detailed <System.Management.Automation.SwitchParameter> Adds parameter descriptions and examples to the basic help display. This parameter is effective only when the help files are installed on the computer. It has no effect on displays of conceptual ( About_ ) help. Required? true Position? named Default value False Accept pipeline input? False Accept wildcard characters? false -Examples <System.Management.Automation.SwitchParameter> Displays only the name, synopsis, and examples. This parameter is effective only when the help files are installed on the computer. It has no effect on displays of conceptual ( About_ ) help. Required? true Position? named Default value False Accept pipeline input? False Accept wildcard characters? false -Full <System.Management.Automation.SwitchParameter> Displays the entire help article for a cmdlet. Full includes parameter descriptions and attributes, examples, input and output object types, and additional notes. This parameter is effective only when the help files are installed on the computer. It has no effect on displays of conceptual ( About_ ) help. Required? false Position? named Default value False Accept pipeline input? False Accept wildcard characters? false ...Get-Helpkomutunun yardımını görüntülemek için önceki komutu çalıştırdığınızda, muhtemelen çıktının okunamayacak kadar hızlı kaydırıldığını fark etmişsinizdir.PowerShell konsolunu, Windows Terminalini veya VS Code'u kullanıyorsanız ve bir yardım makalesini görüntülemeniz gerekiyorsa
helpişlevi yararlı olabilir.Get-Helpçıktısınımore.com'a yönlendirerek her seferinde bir yardım içeriği sayfası görüntüler.Get-Helpcmdlet'i yerinehelpişlevini kullanmanızı öneririm çünkü bu daha iyi bir kullanıcı deneyimi sağlar ve daha az yazma işlemi gerektirir.Not
ISE,
more.comkullanımını desteklemediğinden,help'i çalıştırmakGet-Helpile aynı şekilde çalışır.Aşağıdaki komutların her birini bilgisayarınızdaki PowerShell'de çalıştırın.
Get-Help -Name Get-Help -Full help -Name Get-Help -Full help Get-Help -FullÖnceki komutları çalıştırdığınızda çıktıda herhangi bir değişiklik gözlemlediniz mi?
Önceki örnekte, ilk satır
Get-Helpcmdlet'ini kullanıyor, ikinci satırhelpişlevini kullanıyor ve üçüncü satır Ad'ı atlıyorhelpişlevini kullanırken parametreyi kullanın. Ad konumsal bir parametre olduğundan üçüncü örnek, parametrenin adını açıkça belirtmek yerine konumunun avantajından yararlanır.Aradaki fark, son iki komutun çıktılarını teker teker görüntülemesidir.
helpişlevini kullanırken, içeriğin sonraki sayfasını görüntülemek için Boşluk Çubuğu tuşuna veya çıkmak için Q tuşuna basın. PowerShell'de etkileşimli olarak çalışan herhangi bir komutu sonlandırmanız gerekirse Ctrl+C tuşlarına basın.Belirli bir parametreyle ilgili bilgileri hızla bulmak için Parametre parametresini kullanın. Bu yaklaşım, yardım makalesinin tamamı yerine yalnızca parametreye özgü bilgileri içeren içeriği döndürür. Bu, belirli bir parametre hakkında bilgi bulmanın en kolay yoludur.
Aşağıdaki örnekte,
Get-Help'in Ad parametresi için yardım makalesinden bilgi döndürmek üzere Parameter parametresiyle birlikte.helpişlevi kullanılmaktadır.help Get-Help -Parameter NameYardım bilgileri, Ad parametresinin konumsal olduğunu ve konumsal olarak kullanıldığında ilk konumda (sıfır konumu) belirtilmesi gerektiğini gösterir.
-Name <System.String> Gets help about the specified command or concept. Enter the name of a cmdlet, function, provider, script, or workflow, such as `Get-Member`, a conceptual article name, such as `about_Objects`, or an alias, such as `ls`. Wildcard characters are permitted in cmdlet and provider names, but you can't use wildcard characters to find the names of function help and script help articles. To get help for a script that isn't located in a path that's listed in the `$env:Path` environment variable, type the script's path and file name. If you enter the exact name of a help article, `Get-Help` displays the article contents. If you enter a word or word pattern that appears in several help article titles, `Get-Help` displays a list of the matching titles. If you enter any text that doesn't match any help article titles, `Get-Help` displays a list of articles that include that text in their contents. The names of conceptual articles, such as `about_Objects`, must be entered in English, even in non-English versions of PowerShell. Required? false Position? 0 Default value None Accept pipeline input? True (ByPropertyName) Accept wildcard characters? trueAd parametresi, parametre adının yanındaki
<String>veri türü tarafından tanımlanan bir dize değeri bekler.Bir yardım makalesinin alt kümesini döndürmek için
Get-Helpile belirtebileceğiniz başka parametreler de vardır. Nasıl çalıştıklarını görmek için bilgisayarınızda aşağıdaki komutları çalıştırın.Get-Help -Name Get-Command -Full Get-Help -Name Get-Command -Detailed Get-Help -Name Get-Command -Examples Get-Help -Name Get-Command -Online Get-Help -Name Get-Command -Parameter Noun Get-Help -Name Get-Command -ShowWindowGenellikle
helpkomutunu Tam veya Çevrimiçi parametresiyle kullanırım. Yalnızca örneklerle ilgileniyorsanız Örnekler parametresini kullanın. Yalnızca belirli bir parametreyle ilgileniyorsanız Parametre parametresini kullanın. ShowWindow parametresini kullandığınızda, yardım içeriği ayrı bir aranabilir pencerede görüntülenir. Birden fazla monitörünüz varsa bu pencereyi farklı bir monitöre taşıyabilirsiniz. Ancak ShowWindow parametresinde, yardım makalesinin tamamının görüntülenmesini engelleyebilecek bilinen bir hata bulunmaktadır. ShowWindow parametresi ayrıca Grafik Kullanıcı Arayüzüne (GUI) sahip bir işletim sistemi gerektirir. Windows Server Core'da kullanmaya çalıştığınızda bir hata döndürür.
İnternet erişiminiz varsa bunun yerine Çevrimiçi parametresini kullanabilirsiniz. Çevrimiçi parametresi, yardım makalesini varsayılan web tarayıcınızda açar. Çevrimiçi içerik en güncel içeriktir. Tarayıcı, yardım içeriğinde arama yapmanıza ve diğer ilgili yardım makalelerini görüntülemenize olanak tanır.
Not
Çevrimiçi parametresi Hakkında makaleler için desteklenmez.
help Get-Command -OnlineGet-Help ile komut bulma
Get-Helpile komutları bulmak için, Ad parametresinin değeri için yıldız işareti (*) joker karakterleriyle çevrelenmiş bir arama terimi belirtin. Aşağıdaki örnekte Ad parametresi konumsal olarak kullanılmaktadır.help *process*Name Category Module Synops ---- -------- ------ ------ Enter-PSHostProcess Cmdlet Microsoft.PowerShell.Core Con... Exit-PSHostProcess Cmdlet Microsoft.PowerShell.Core Clo... Get-PSHostProcessInfo Cmdlet Microsoft.PowerShell.Core Get... Debug-Process Cmdlet Microsoft.PowerShell.M... Deb... Get-Process Cmdlet Microsoft.PowerShell.M... Get... Start-Process Cmdlet Microsoft.PowerShell.M... Sta... Stop-Process Cmdlet Microsoft.PowerShell.M... Sto... Wait-Process Cmdlet Microsoft.PowerShell.M... Wai... Invoke-LapsPolicyProcessing Cmdlet LAPS Inv... ConvertTo-ProcessMitigationPolicy Cmdlet ProcessMitigations Con... Get-ProcessMitigation Cmdlet ProcessMitigations Get... Set-ProcessMitigation Cmdlet ProcessMitigations Set...Bu senaryoda
*joker karakterlerini eklemenize gerek yoktur.Get-Helpsağladığınız değerle eşleşen bir komut bulamazsa, bu değer için tam metin araması yapar. Aşağıdaki örnek,işlem'in her bir ucunda*joker karakterinin belirtilmesiyle aynı sonuçları üretir.help processDeğer içinde bir joker karakter belirttiğinizde,
Get-Helpyalnızca sağladığınız kalıpla eşleşen komutları arar. Tam metin araması yapmaz. Aşağıdaki komut herhangi bir sonuç döndürmez.help pr*cessPowerShell, kısa çizgi ile başlayan bir değeri tırnak içine almadan belirtirseniz, bunu bir parametre adı olarak yorumladığından hata oluşturur.
Get-Helpcmdlet'i için böyle bir parametre adı mevcut değil.help -process-processile biten komutları aramaya çalışıyorsanız değerin başına bir*eklemeniz gerekir.help *-processGet-Helpile PowerShell komutlarını aradığınızda, çok spesifik olmaktansa belirsiz olmak daha iyidir.Daha önce
processkelimesini arattığınızda, sonuçlar yalnızca adlarındaprocessiçeren komutları döndürüyordu. Ancakişlemler'i ararsanız komut adları için herhangi bir eşleşme bulamaz. Daha önce de belirtildiği gibi, yardım herhangi bir eşleşme bulamadığında, sisteminizdeki her yardım makalesinde kapsamlı bir tam metin araması yapar ve bu sonuçları döndürür. Bu tür bir arama genellikle sizinle alakalı olmayan bilgiler de dahil olmak üzere beklenenden daha fazla sonuç üretir.help processesName Category Module Synops ---- -------- ------ ------ Disconnect-PSSession Cmdlet Microsoft.PowerShell.Core Dis... Enter-PSHostProcess Cmdlet Microsoft.PowerShell.Core Con... ForEach-Object Cmdlet Microsoft.PowerShell.Core Per... Get-PSHostProcessInfo Cmdlet Microsoft.PowerShell.Core Get... Get-PSSessionConfiguration Cmdlet Microsoft.PowerShell.Core Get... New-PSSessionOption Cmdlet Microsoft.PowerShell.Core Cre... New-PSTransportOption Cmdlet Microsoft.PowerShell.Core Cre... Out-Host Cmdlet Microsoft.PowerShell.Core Sen... Start-Job Cmdlet Microsoft.PowerShell.Core Sta... Where-Object Cmdlet Microsoft.PowerShell.Core Sel... Debug-Process Cmdlet Microsoft.PowerShell.M... Deb... Get-Process Cmdlet Microsoft.PowerShell.M... Get... Get-WmiObject Cmdlet Microsoft.PowerShell.M... Get... Start-Process Cmdlet Microsoft.PowerShell.M... Sta... Stop-Process Cmdlet Microsoft.PowerShell.M... Sto... Wait-Process Cmdlet Microsoft.PowerShell.M... Wai... Clear-Variable Cmdlet Microsoft.PowerShell.U... Del... Convert-String Cmdlet Microsoft.PowerShell.U... For... ConvertFrom-Csv Cmdlet Microsoft.PowerShell.U... Con... ConvertFrom-Json Cmdlet Microsoft.PowerShell.U... Con... ConvertTo-Html Cmdlet Microsoft.PowerShell.U... Con... ConvertTo-Xml Cmdlet Microsoft.PowerShell.U... Cre... Debug-Runspace Cmdlet Microsoft.PowerShell.U... Sta... Export-Csv Cmdlet Microsoft.PowerShell.U... Con... Export-FormatData Cmdlet Microsoft.PowerShell.U... Sav... Format-List Cmdlet Microsoft.PowerShell.U... For... Format-Table Cmdlet Microsoft.PowerShell.U... For... Get-Unique Cmdlet Microsoft.PowerShell.U... Ret... Group-Object Cmdlet Microsoft.PowerShell.U... Gro... Import-Clixml Cmdlet Microsoft.PowerShell.U... Imp... Import-Csv Cmdlet Microsoft.PowerShell.U... Cre... Measure-Object Cmdlet Microsoft.PowerShell.U... Cal... Out-File Cmdlet Microsoft.PowerShell.U... Sen... Out-GridView Cmdlet Microsoft.PowerShell.U... Sen... Select-Object Cmdlet Microsoft.PowerShell.U... Sel... Set-Variable Cmdlet Microsoft.PowerShell.U... Set... Sort-Object Cmdlet Microsoft.PowerShell.U... Sor... Tee-Object Cmdlet Microsoft.PowerShell.U... Sav... Trace-Command Cmdlet Microsoft.PowerShell.U... Con... Write-Information Cmdlet Microsoft.PowerShell.U... Spe... Export-BinaryMiLog Cmdlet CimCmdlets Cre... Get-CimAssociatedInstance Cmdlet CimCmdlets Ret... Get-CimInstance Cmdlet CimCmdlets Get... Import-BinaryMiLog Cmdlet CimCmdlets Use... Invoke-CimMethod Cmdlet CimCmdlets Inv... New-CimInstance Cmdlet CimCmdlets Cre... Remove-CimInstance Cmdlet CimCmdlets Rem... Set-CimInstance Cmdlet CimCmdlets Mod... Compress-Archive Function Microsoft.PowerShell.A... Cre... Get-Counter Cmdlet Microsoft.PowerShell.D... Get... Invoke-WSManAction Cmdlet Microsoft.WSMan.Manage... Inv... Remove-WSManInstance Cmdlet Microsoft.WSMan.Manage... Del... Get-WSManInstance Cmdlet Microsoft.WSMan.Manage... Dis... New-WSManInstance Cmdlet Microsoft.WSMan.Manage... Cre... Set-WSManInstance Cmdlet Microsoft.WSMan.Manage... Mod... about_Arithmetic_Operators HelpFile about_Arrays HelpFile about_Environment_Variables HelpFile about_Execution_Policies HelpFile about_Functions HelpFile about_Jobs HelpFile about_Logging HelpFile about_Methods HelpFile about_Objects HelpFile about_Pipelines HelpFile about_Preference_Variables HelpFile about_Remote HelpFile about_Remote_Jobs HelpFile about_Session_Configuration_Files HelpFile about_Simplified_Syntax HelpFile about_Switch HelpFile about_Variables HelpFile about_Variable_Provider HelpFile about_Windows_Powershell_5.1 HelpFile about_WQL HelpFile about_WS-Management_Cmdlets HelpFile about_Foreach-Parallel HelpFile about_Parallel HelpFile about_Sequence HelpFileişlem'i aradığınızda 12 sonuç döndürdü. Ancakişlemlerarandığında 78 sonuç elde edildi. Aramanız yalnızca bir eşleşme bulursaGet-Help, arama sonuçlarını listelemek yerine yardım içeriğini görüntüler.help *hotfix*NAME Get-HotFix SYNOPSIS Gets the hotfixes that are installed on local or remote computers. SYNTAX Get-HotFix [-ComputerName <System.String[]>] [-Credential <System.Management.Automation.PSCredential>] [-Description <System.String[]>] [<CommonParameters>] Get-HotFix [[-Id] <System.String[]>] [-ComputerName <System.String[]>] [-Credential <System.Management.Automation.PSCredential>] [<CommonParameters>] DESCRIPTION > This cmdlet is only available on the Windows platform. The `Get-Hotfix` cmdlet uses the Win32_QuickFixEngineering WMI class to list hotfixes that are installed on the local computer or specified remote computers. RELATED LINKS Online Version: https://learn.microsoft.com/powershell/module/microsoft. powershell.management/get-hotfix?view=powershell-5.1&WT.mc_id=ps-gethelp about_Arrays Add-Content Get-ComputerRestorePoint Get-Credential Win32_QuickFixEngineering class REMARKS To see the examples, type: "get-help Get-HotFix -examples". For more information, type: "get-help Get-HotFix -detailed". For technical information, type: "get-help Get-HotFix -full". For online help, type: "get-help Get-HotFix -online"Bu özellik yaygın olarak bilinmese de,
Get-Helpile yardım makalelerinin eksik olduğu komutları da bulabilirsiniz.moreişlevi, yardım makalesi olmayan komutlardan biridir. Yardım makaleleri içermeyenGet-Helpkomutlarını bulabileceğinizi doğrulamak içindaha fazlabulmak üzerehelpişlevini kullanın.help *more*Arama yalnızca bir eşleşme buldu, dolayısıyla bir komutun yardım makalesi olmadığında gördüğünüz temel sözdizimi bilgilerini döndürdü.
NAME more SYNTAX more [[-paths] <string[]>] ALIASES None REMARKS NonePowerShell yardım sistemi aynı zamanda Hakkında kavramsal yardım makalelerini de içerir. Hakkında makalelerini almak için sisteminizdeki yardım içeriğini güncellemeniz gerekir. Daha fazla bilgi için bu bölümün Güncelleme yardımı kısmına bakın.
Sisteminizdeki tüm Hakkında yardım makalelerinin bir listesini döndürmek için aşağıdaki komutu kullanın.
help About_*Sonuçları tek bir Hakkında yardım makalesiyle sınırladığınızda,
Get-Helpbu makalenin içeriğini görüntüler.help about_Updatable_HelpYardım güncelleniyor
Bu bölümün başlarında,
Get-Helpcmdlet'ini ilk kez çalıştırdığınızda bilgisayarınızdaki PowerShell yardım makalelerini güncellediniz. Yardım içeriğine ilişkin güncellemeleri almak için bilgisayarınızdaUpdate-Helpcmdlet'ini düzenli aralıklarla çalıştırmalısınız.Bu önemli
Windows PowerShell 5.1'de, yükseltilmiş bir PowerShell oturumunda
Update-Help'i yönetici olarak çalıştırmanız gerekir.Aşağıdaki örnekte
Güncelleme-Yardım, bilgisayarınızda yüklü olan tüm modüller için PowerShell yardım içeriğini indirir. Yardım içeriğinin en son sürümünü indirdiğinizden emin olmak için Zorla parametresini kullanmalısınız.Update-Help -ForceAşağıdaki sonuçlarda gösterildiği gibi bir modül hata döndürdü. Hatalar nadir değildir ve genellikle modülün yazarı güncellenebilir yardımı doğru şekilde yapılandırmadığında ortaya çıkar.
Update-Help : Failed to update Help for the module(s) 'BitsTransfer' with UI culture(s) {en-US} : Unable to retrieve the HelpInfo XML file for UI culture en-US. Make sure the HelpInfoUri property in the module manifest is valid or check your network connection and then try the command again. At line:1 char:1 + Update-Help + ~~~~~~~~~~~ + CategoryInfo : ResourceUnavailable: (:) [Update-Help], Except ion + FullyQualifiedErrorId : UnableToRetrieveHelpInfoXml,Microsoft.PowerShe ll.Commands.UpdateHelpCommandGüncelleme-Yardım, yardım içeriğini indirmek için internet erişimi gerektirir. Bilgisayarınızın internet erişimi yoksa, güncellenmiş yardım içeriğini indirip kaydetmek için internet erişimi olan bir bilgisayardaSave-Helpcmdlet'ini kullanın. Ardından, kaydedilen güncellenmiş yardım içeriğinin konumunu belirtmek içinUpdate-Help'in SourcePath parametresini kullanın.Get-Command
Get-Command, komutları bulmanıza yardımcı olan başka bir çok amaçlı komuttur.Get-Command'ı herhangi bir parametre olmadan çalıştırdığınızda, sisteminizdeki tüm PowerShell komutlarının bir listesini döndürür. Ayrıca,Get-Help'e benzer komut söz dizimi elde etmek içinGet-Command'ı da kullanabilirsiniz.Get-Commandsözdizimini nasıl belirlersiniz? Bu bölümün Get-Help bölümünde gösterildiği gibiGet-Commandyardım makalesini görüntülemek içinGet-Help'i kullanabilirsiniz. Herhangi bir komutun söz dizimini görüntülemek için Sözdizimi parametresiyle birlikteGet-Command'ı da kullanabilirsiniz. Bu kısayol, bir komutun yardım içeriğinde gezinmeden, nasıl kullanılacağını hızlı bir şekilde belirlemenize yardımcı olur.Get-Command -Name Get-Command -SyntaxGet-Command'ı Sözdizimi parametresiyle birlikte kullanmak,Get gibi izin verilen belirli değerleri listelemeden, parametreleri ve bunların değer türlerini gösteren sözdiziminin daha kısa bir görünümünü sağlar -Yardımgösterilir.Get-Command [[-ArgumentList] <Object[]>] [-Verb <string[]>] [-Noun <string[]>] [-Module <string[]>] [-FullyQualifiedModule <ModuleSpecification[]>] [-TotalCount <int>] [-Syntax] [-ShowCommandInfo] [-All] [-ListImported] [-ParameterName <string[]>] [-ParameterType <PSTypeName[]>] [<CommonParameters>] Get-Command [[-Name] <string[]>] [[-ArgumentList] <Object[]>] [-Module <string[]>] [-FullyQualifiedModule <ModuleSpecification[]>] [-CommandType <CommandTypes>] [-TotalCount <int>] [-Syntax] [-ShowCommandInfo] [-All] [-ListImported] [-ParameterName <string[]>] [-ParameterType <PSTypeName[]>] [<CommonParameters>]Bir komutun nasıl kullanılacağı hakkında daha ayrıntılı bilgiye ihtiyacınız varsa
Get-Help'i kullanın.help Get-Command -FullGet-Help'in SÖZDİZİMİ bölümü, parametreler için numaralandırılmış değerleri genişleterek daha kullanıcı dostu bir görünüm sağlar. Kullanabileceğiniz gerçek değerleri göstererek mevcut seçenekleri anlamanızı kolaylaştırır.... Get-Command [[-Name] <System.String[]>] [[-ArgumentList] <System.Object[]>] [-All] [-CommandType {Alias | Function | Filter | Cmdlet | ExternalScript | Application | Script | Workflow | Configuration | All}] [-FullyQualifiedModule <Microsoft.PowerShell.Commands.ModuleSpecification[]>] [-ListImported] [-Module <System.String[]>] [-ParameterName <System.String[]>] [-ParameterType <System.Management.Automation.PSTypeName[]>] [-ShowCommandInfo] [-Syntax] [-TotalCount <System.Int32>] [<CommonParameters>] Get-Command [[-ArgumentList] <System.Object[]>] [-All] [-FullyQualifiedModule <Microsoft.PowerShell.Commands.ModuleSpecification[]>] [-ListImported] [-Module <System.String[]>] [-Noun <System.String[]>] [-ParameterName <System.String[]>] [-ParameterType <System.Management.Automation.PSTypeName[]>] [-ShowCommandInfo] [-Syntax] [-TotalCount <System.Int32>] [-Verb <System.String[]>] [<CommonParameters>] ...Get-Commandyardımının PARAMETRELER bölümü, Ad, İsmin ve Fiilin parametreler joker karakterleri kabul eder.... -Name <System.String[]> Specifies an array of names. This cmdlet gets only commands that have the specified name. Enter a name or name pattern. Wildcard characters are permitted. To get commands that have the same name, use the All parameter. When two commands have the same name, by default, `Get-Command` gets the command that runs when you type the command name. Required? false Position? 0 Default value None Accept pipeline input? True (ByPropertyName, ByValue) Accept wildcard characters? true -Noun <System.String[]> Specifies an array of command nouns. This cmdlet gets commands, which include cmdlets, functions, and aliases, that have names that include the specified noun. Enter one or more nouns or noun patterns. Wildcard characters are permitted. Required? false Position? named Default value None Accept pipeline input? True (ByPropertyName) Accept wildcard characters? true -Verb <System.String[]> Specifies an array of command verbs. This cmdlet gets commands, which include cmdlets, functions, and aliases, that have names that include the specified verb. Enter one or more verbs or verb patterns. Wildcard characters are permitted. Required? false Position? named Default value None Accept pipeline input? True (ByPropertyName) Accept wildcard characters? true ...Aşağıdaki örnekte,
Get-Command'ın Ad parametresi değeriyle birlikte*joker karakteri kullanılmaktadır.Get-Command -Name *service*Get-Command'ın Ad parametresiyle joker karakterleri kullandığınızda, aşağıdaki sonuçlarda gösterildiği gibi PowerShell komutlarını ve yerel komutları döndürür.CommandType Name Version ----------- ---- ------- Function Get-NetFirewallServiceFilter 2.0.0.0 Function Set-NetFirewallServiceFilter 2.0.0.0 Cmdlet Get-Service 3.1.0.0 Cmdlet New-Service 3.1.0.0 Cmdlet New-WebServiceProxy 3.1.0.0 Cmdlet Restart-Service 3.1.0.0 Cmdlet Resume-Service 3.1.0.0 Cmdlet Set-Service 3.1.0.0 Cmdlet Start-Service 3.1.0.0 Cmdlet Stop-Service 3.1.0.0 Cmdlet Suspend-Service 3.1.0.0 Application SecurityHealthService.exe 10.0.2... Application SensorDataService.exe 10.0.2... Application services.exe 10.0.2... Application services.msc 0.0.0.0 Application TieringEngineService.exe 10.0.2... Application Windows.WARP.JITService.exe 10.0.2...CommandType parametresini kullanarak
Get-Commandsonuçlarını PowerShell komutlarıyla sınırlandırabilirsiniz.Get-Command -Name *service* -CommandType Cmdlet, Function, Alias, ScriptYalnızca PowerShell komutlarında fiiller ve isimler bulunduğundan başka bir seçenek de Fiil veya İsim parametresini ya da her ikisini birden kullanmak olabilir.
Aşağıdaki örnek, bilgisayarınızdaki işlemlerle çalışan komutları bulmak için
Get-Command'ı kullanır. İsim parametresini kullanın ve değeri olarakİşlem'i belirtin.Get-Command -Noun ProcessCommandType Name Version ----------- ---- ------- Cmdlet Debug-Process 3.1.0.0 Cmdlet Get-Process 3.1.0.0 Cmdlet Start-Process 3.1.0.0 Cmdlet Stop-Process 3.1.0.0 Cmdlet Wait-Process 3.1.0.0Özet
Bu bölümde
Get-HelpveGet-Commandile komutları nasıl bulacağınızı öğrendiniz. Ayrıca komutları bulduğunuzda nasıl kullanacağınızı anlamak için yardım sistemini nasıl kullanacağınızı da öğrendiniz. Ayrıca, yeni yardım içeriği mevcut olduğunda bilgisayarınızdaki yardım sistemini nasıl güncelleyeceğinizi öğrendiniz.Gözden geçirmek
Get-Service'in DisplayName parametresi konumsal mı?
Get-Processcmdlet'inde kaç parametre kümesi bulunur?- Olay günlükleriyle çalışmak için hangi PowerShell komutları mevcuttur?
- Bilgisayarınızda çalışan PowerShell işlemlerinin listesini döndürmek için PowerShell komutu nedir?
- Bilgisayarınızda depolanan PowerShell yardım içeriğini nasıl güncellersiniz?
- Get-Help
- Get-Command
- Update-Help
- Save-Help
- about_Updatable_Help
- about_Command_Sözdizimi
Referanslar
Bu bölümde ele alınan kavramlar hakkında daha fazla bilgi edinmek için aşağıdaki PowerShell yardım makalelerini okuyun.
Sonraki adımlar
Bir sonraki bölümde nesneler, özellikler, yöntemler ve Get-Member cmdlet'i hakkında bilgi edineceksiniz.