Bölüm 2 - Yardım sistemi
PowerShell'de yeterliliği değerlendirmek için tasarlanan bir denemede, yeni başlayanlar ve uzmanlar olmak üzere iki farklı BT uzmanı grubuna ilk olarak bir bilgisayara erişim olmadan yazılı bir sınav verildi. Şaşırtıcı bir şekilde, test puanları her iki grupta da karşılaştırılabilir becerileri gösteriyordu. Ardından ilkini yansıtan ancak tek bir önemli farkla sonraki bir test uygulandı: katılımcıların PowerShell ile donatılmış çevrimdışı bir bilgisayara erişimi vardı. Sonuçlar, bu kez iki grup arasında önemli bir beceri boşluğu olduğunu ortaya koydu.
İki değerlendirme arasında gözlemlenen sonuçlara hangi faktörler katkıda bulundu?
Uzmanlar her zaman yanıtları bilmez, ancak yanıtları nasıl çözeceklerini bilirler.
İki testin sonuçlarında gözlemlenen sonuçlar, uzmanların binlerce PowerShell komutunu ezberlememelerinden kaynaklanıyordu. Bunun yerine, PowerShell'deki Yardım sistemini kullanma konusunda uzmandır ve gerektiğinde komutları bulmayı ve kullanmayı öğrenmelerini sağlar.
Yardım sistemiyle yetkin olmak, PowerShell ile başarının anahtarıdır.
PowerShell'in yaratıcısı Jeffrey Snover'ın benzer bir hikayeyi birden çok kez paylaştığını duydum.
Bulunabilirlik
PowerShell'de derlenen komutlar, "CMD-let" olarak değil, "command-let" olarak telaffuz edilen cmdlet'ler olarak bilinir. Cmdlet'ler için adlandırma kuralı, kolayca bulunabilir hale getirmek için tekil bir Fiil-İsim biçimini izler. Örneğin, Get-Process
hangi işlemlerin çalıştığını belirleyen cmdlet ve Get-Service
hizmetlerin listesini almak için kullanılan cmdlet'tir. Betik cmdlet'leri olarak da bilinen işlevler ve diğer adlar, bu kitabın ilerleyen bölümlerinde ele alınan diğer PowerShell komut türleridir. "PowerShell komutu" terimi, cmdlet, işlev veya diğer addan bağımsız olarak PowerShell'deki tüm komutları açıklar.
PowerShell'den ve ipconfig.exe
gibi ping.exe
geleneksel komut satırı programları gibi işletim sistemi yerel komutlarını da çalıştırabilirsiniz.
PowerShell'deki üç çekirdek cmdlet'i
Get-Help
Get-Command
Get-Member
(3. bölümde ele alınmıştır)
Sık sık şu soruldu: "PowerShell'de komutların ne olduğunu nasıl anlıyorsunuz?". Hem hem Get-Command
de Get-Help
PowerShell'deki komutları bulmak ve anlamak için çok değerli kaynaklardır.
Get-Help
PowerShell'deki Yardım sistemi hakkında bilmeniz gereken ilk şey, cmdlet'in Get-Help
nasıl kullanılacağıdır.
Get-Help
, komutları bulduğunuzda nasıl kullanacağınızı öğrenmenize yardımcı olan çok amaçlı bir komutdur.
komutlarını bulmak için de kullanabilirsiniz Get-Help
, ancak ile karşılaştırıldığında Get-Command
farklı ve daha dolaylı bir şekilde kullanabilirsiniz.
komutlarını bulmak için kullanırken Get-Help
, başlangıçta girişinize göre komut adları için bir joker karakter araması gerçekleştirir. Bu herhangi bir eşleşme bulamazsa sisteminizdeki tüm PowerShell yardım makalelerinde kapsamlı bir tam metin araması yürütür. Bu da herhangi bir sonuç bulamazsa bir hata döndürür.
Cmdlet'in yardım içeriğini görüntülemek için Get-Help
şu şekilde kullanılırGet-Help
.
Get-Help -Name Get-Help
PowerShell sürüm 3.0'da başlayarak, yardım içeriği işletim sistemiyle önceden yüklenmez. İlk kez çalıştırdığınızda Get-Help
, PowerShell yardım dosyalarını bilgisayarınıza indirmek isteyip istemediğinizi soran bir ileti görüntülenir.
Y tuşuna basarak Evet yanıtlanması cmdlet'ini Update-Help
yürütür ve 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 iletiyi almazsanız, yönetici olarak çalışan yükseltilmiş bir PowerShell oturumundan komutunu çalıştırın Update-Help
.
Güncelleştirme tamamlandıktan sonra yardım makalesi görüntülenir.
Örneği bilgisayarınızda çalıştırmak için bir dakikanızı ayırın, çıkışı gözden geçirin ve yardım sisteminin bilgileri nasıl düzenlediğini gözlemleyin.
- AD
- ÖZET
- SÖZ DİZİMİ
- AÇIKLAMA
- İLGİLİ BAĞLANTILAR
- AÇIKLAMALAR
Çıkışı gözden geçirirken, yardım makalelerinin genellikle çok fazla 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, komutuna 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 sağlar. Her yardım makalesinin SÖZ DIZIMİ bölümünde komut için kullanılabilir parametreler özetlenmiştir.
Get-Help
, yardım makalesinin tamamını veya bir komut alt kümesini döndürmek için belirtebileceğiniz çeşitli parametrelere sahiptir. için tüm kullanılabilir parametreleri görüntülemek içinGet-Help
, aşağıdaki örnekte gösterildiği gibi yardım makalesinin SÖZ DIZIMİ 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 kümeleri
için Get-Help
SÖZ DIZIMİ bölümünü gözden geçirirken, bilgilerin altı kez yinelendiğini görebilirsiniz. Bu blokların her biri ayrı bir parametre kümesidir ve cmdlet'in altı ayrı parametre kümesine sahip olduğunu gösterir Get-Help
. Daha yakından bir bakış, her parametre kümesinin en az bir benzersiz parametre içerdiğini ortaya çıkararak diğerlerinden farklı hale getirir.
Parametre kümeleri birbirini dışlar. Yalnızca bir parametre kümesinde bulunan benzersiz bir parametre belirttiğinizde, PowerShell sizi bu parametre kümesinin içinde yer alan parametreleri kullanmakla sınırlar.
Örneğin, tam ve ayrıntılı parametrelerini Get-Help
birlikte kullanamazsınız çünkü bunlar farklı parametre kümelerine aittir.
Aşağıdaki parametrelerin her biri cmdlet için farklı bir parametre kümesine Get-Help
aittir.
- Tam
- Ayrıntılı
- Örnekler
- Çevrimiçi
- Parametre
- GösterWindow
Komut söz dizimi
PowerShell'i yeni kullanıyorsanız SÖZ DIZIMİ bölümünde şifreli bilgileri (kare ve açılı ayraçlarla karakterize) kavramak zor görünebilir. Ancak, bu söz dizimi öğelerini öğrenmek, PowerShell ile yetkin olmak için gereklidir. PowerShell Yardım sistemini ne kadar sık kullanırsanız, tüm nüansları hatırlamak o kadar kolay olur.
Cmdlet'in söz dizimini Get-EventLog
görüntüleyin.
Get-Help Get-EventLog
Aşağıdaki çıkışta yardım makalesinin ilgili bölümü gösterilmektedir.
...
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öz dizimi bilgileri köşeli ayraç çiftlerini ([]
) içerir. Kullanımlarına bağlı olarak, bu köşeli ayraçlar iki farklı amaca hizmet eder.
- Köşeli ayraç içine alınmış öğeler isteğe bağlıdır.
- gibi
<string[]>
bir veri türünü izleyen boş köşeli ayraç kümesi, parametrenin dizi veya koleksiyon nesnesi olarak geçirilen birden çok değeri kabulebileceğini gösterir.
Konumsal parametreler
Bazı cmdlet'ler konumsal parametreleri kabul etmek üzere tasarlanmıştır. Konumsal parametreler, parametrenin adını belirtmeden bir değer sağlamanıza olanak sağlar. Bir parametreyi konum olarak kullanırken, değerini komut satırında doğru konumda belirtmeniz gerekir. Bir parametrenin konum bilgilerini, komutun yardım makalesinin PARAMETERS bölümünde bulabilirsiniz. Parametre adlarını açıkça belirttiğinizde, parametreleri herhangi bir sırada kullanabilirsiniz.
cmdlet'i Get-EventLog
için, ilk parametre kümesindeki ilk parametre LogName'dir.
LogName köşeli ayraç içine alınır ve bunun konumsal bir parametre olduğunu gösterir.
Get-EventLog [-LogName] <System.String>
LogName konumsal bir parametre olduğundan, bunu ada veya konuma göre belirtebilirsiniz. Parametre adını izleyen 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 ayraçların olmaması, LogName'in bu parametre kümesi içinde 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 ayraç içine alınır ve InstanceId'nin isteğe bağlı bir parametre olduğunu gösterir.
[[-InstanceId] <System.Int64[]>]
Ayrıca, InstanceId'nin logname parametresine benzer bir konumsal parametre olduğunu belirten kendi köşeli ayraç çifti vardır. Veri türünün ardından boş bir köşeli ayraç kümesi, InstanceId'nin birden çok değeri kabul ettiğini gösterir.
Parametreleri değiştirme
Değer gerektirmeyen bir parametreye anahtar parametresi adı verilir. Parametre adından sonra veri türü olmadığından anahtar parametrelerini kolayca tanımlayabilirsiniz. Bir switch parametresi belirttiğinizde değeri şeklindedir true
. Bir switch parametresi belirtmediğinizde değeri şeklindedir false
.
İkinci parametre kümesi, anahtar parametresi olan List parametresini içerir. List parametresini belirttiğinizde, yerel bilgisayardaki olay günlüklerinin listesini döndürür.
[-List]
Söz dizimine basitleştirilmiş bir yaklaşım
Düz İngilizce dışında bazı komutlar için şifreli komut söz dizimi ile aynı bilgileri elde etmek için daha kullanıcı dostu bir yöntem vardır. PowerShell, Tam parametresiyle kullanırken Get-Help
tam yardım makalesini döndürerek komutun kullanımını anlamayı kolaylaştırır.
Get-Help -Name Get-Help -Full
Örneği bilgisayarınızda çalıştırmak için bir dakikanızı ayırın, çıkışı gözden geçirin ve yardım sisteminin bilgileri nasıl düzenlediğini gözlemleyin.
- AD
- ÖZET
- SÖZ DİZİMİ
- AÇIKLAMA
- PARAMETRELER
- GİRİŞLER
- ÇIKIŞLAR
- NOTLAR
- ÖRNEKLER
- İLGİLİ BAĞLANTILAR
Cmdlet'iyle Full parametresini Get-Help
belirterek çıktıda birkaç ek bölüm bulunur. Bu bölümler arasında PARAMETERS genellikle her parametre için ayrıntılı bir açıklama sağlar. Ancak, bu bilgilerin 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
...
Komutun yardımını görüntülemek için önceki komutu çalıştırdığınızda Get-Help
, çıktının okunamayacak kadar hızlı kaydırılmış olduğunu fark etmişsinizdir.
PowerShell konsolu, Windows Terminali veya VS Code kullanıyorsanız ve bir yardım makalesini help
görüntülemeniz gerekiyorsa işlev yararlı olabilir. çıktısını Get-Help
more.com
ile aynı anda bir sayfa yardım içeriği görüntüleyerek ile gönderir. Daha iyi bir kullanıcı deneyimi sağladığından ve daha az yazıldığı için cmdlet yerine Get-Help
işlevini kullanmanızı help
öneririm.
Not
ISE, kullanılmasını more.com
desteklemez, bu nedenle çalıştırmak help
ile Get-Help
aynı şekilde çalışır.
Aşağıdaki komutların her birini bilgisayarınızda 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 çıkışta herhangi bir varyasyon gözlemlediniz mi?
Önceki örnekte, ilk satır cmdlet'iniGet-Help
, ikinci satır işlevini, help
üçüncü satır ise name parametresini işlev kullanılırken help
atlar. Ad bir konumsal parametre olduğundan, üçüncü örnek parametrenin adını açıkça belirtme yerine konumundan yararlanır.
Aradaki fark, son iki komutun çıkışlarını her seferinde bir sayfa görüntülemesidir. işlevini kullanırkenhelp
, bir sonraki içerik sayfasını görüntülemek için Ara Çubuğu'na veya çıkmak için Q tuşuna basın. PowerShell'de etkileşimli olarak çalışan herhangi bir komutu sonlandırmanız gerekiyorsa Ctrl C tuşlarına+basın.
Belirli bir parametre hakkındaki bilgileri hızla bulmak için Parameter 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, parametresinin help
Name parametresine ilişkin yardım makalesinden bilgi döndürmek için Parameter parametresiyle Get-Help
işlevi kullanılır.
help Get-Help -Parameter Name
Yardım bilgileri Name 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? true
Name parametresi, parametre adının yanındaki veri türü tarafından <String>
tanımlanan bir dize değeri bekler.
Bir yardım makalesinin alt kümesini döndürmek için ile Get-Help
belirtebileceğiniz birkaç parametre daha 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 -ShowWindow
Genellikle Tam veya Çevrimiçi parametresiyle kullanıyorumhelp <command name>
. 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 çok monitörünüz varsa bu pencereyi farklı bir monitöre taşıyabilirsiniz. Ancak, ShowWindow parametresinin yardım makalesinin tamamını görüntülemesini engelleyebilecek bilinen bir hatası vardır. ShowWindow parametresi, Grafik Kullanıcı Arabirimi (GUI) içeren bir işletim sistemi de gerektirir. Windows Server Core'da kullanmayı denediğinizde 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ızı ve diğer ilgili yardım makalelerini görüntülemenizi sağlar.
Not
Çevrimiçi parametresi Hakkında makaleleri için desteklenmez.
help Get-Command -Online
Get-Help ile komutları bulma
ile Get-Help
komutları bulmak için Name parametresinin değeri için yıldız işareti (*
) joker karakterleriyle çevrili bir arama terimi belirtin. Aşağıdaki örnekte Name 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 karakter eklemeniz *
gerekmez. Get-Help
Sağladığınız değerle eşleşen bir komut bulamazsa, bu değer için tam metin araması yapar. Aşağıdaki örnek, her sonunda process
joker karakter belirtmeyle *
aynı sonuçları üretir.
help process
Değer içinde bir joker karakter belirttiğinizde, Get-Help
yalnızca sağladığınız desenle eşleşen komutları arar. Tam metin araması yapmaz. Aşağıdaki komut hiçbir sonuç döndürmez.
help pr*cess
PowerShell, bir parametre adı olarak yorumladığı için tırnak içine almadan kısa çizgiyle başlayan bir değer belirtirseniz bir hata oluşturur. Cmdlet için Get-Help
böyle bir parametre adı yok.
help -process
ile -process
biten komutları aramayı denerseniz, değerin başına bir *
eklemeniz gerekir.
help *-process
ile Get-Help
PowerShell komutlarını aradığınızda, çok belirgin olmak yerine belirsiz olmak daha iyidir.
Daha önce aradığınızda process
, sonuçlar yalnızca adlarında bulunan process
komutları döndürdü. Ancak için processes
arama yaparsanız, komut adları için hiçbir eşleşme bulamaz. Daha önce belirtildiği gibi, yardım hiçbir eşleşme bulamadıysa sisteminizdeki her yardım makalesinde kapsamlı bir tam metin araması yapar ve bu sonuçları döndürür. Bu tür aramalar genellikle sizinle ilgili olmayan bilgiler de dahil olmak üzere beklenenden daha fazla sonuç üretir.
help processes
Name 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 HelpFile
için arama process
yaptığınızda 12 sonuç döndürdü. Ancak araması yaparken processes
78 sonuç elde etti. Aramanız yalnızca bir eşleşme bulursa, Get-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 ile Get-Help
ilgili yardım makalelerinin eksik olduğu komutları da bulabilirsiniz. more
İşlev, yardım makalesi olmayan komutlardan biridir. ile yardım makalelerini içermeyen komutları Get-Help
bulabileceğinizi help
onaylamak için işlevini kullanarak öğesini bulun more
.
help *more*
Aramada yalnızca bir eşleşme bulunduğundan, bir komutun yardım makalesi olmadığında gördüğünüz temel söz dizimi bilgilerini döndürdü.
NAME
more
SYNTAX
more [[-paths] <string[]>]
ALIASES
None
REMARKS
None
PowerShell yardım sistemi ayrıca yardım makaleleri hakkında kavramsal bilgi içerir. Hakkında makalelerini almak için sisteminizdeki yardım içeriğini güncelleştirmeniz gerekir. Daha fazla bilgi için bu bölümün Güncelleştirme yardımı bölümüne bakın.
Sisteminizdeki tüm Yardım hakkında makalelerinin listesini döndürmek için aşağıdaki komutu kullanın.
help About_*
Sonuçları bir Yardım hakkında makalesi ile sınırladığınızda, Get-Help
bu makalenin içeriği görüntülenir.
help about_Updatable_Help
Yardım güncelleştiriliyor
Bu bölümün önceki bölümlerinde, cmdlet'i ilk kez çalıştırdığınızda bilgisayarınızdaki PowerShell yardım makalelerini Get-Help
güncelleştirmiştiniz. Yardım içeriğine yönelik Update-Help
güncelleştirmeleri almak için cmdlet'i bilgisayarınızda düzenli aralıklarla çalıştırmanız gerekir.
Önemli
Windows PowerShell 5.1'de yükseltilmiş bir PowerShell oturumunda yönetici olarak çalışmanız Update-Help
gerekir.
Aşağıdaki örnekte, Update-Help
bilgisayarınızda yüklü 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 Force parametresini kullanmanız gerekir.
Update-Help -Force
Aşağıdaki sonuçlarda gösterildiği gibi modül bir hata döndürdü. Hatalar yaygın değildir ve genellikle modülün yazarı güncelleştirilebilir yardımı doğru yapılandırmadığında oluşur.
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.UpdateHelpCommand
Update-Help
yardım içeriğini indirmek için İnternet erişimi gerektirir. Bilgisayarınızda İnternet erişimi yoksa, güncelleştirilmiş yardım içeriğini indirmek ve kaydetmek için internet erişimi olan bir bilgisayarda cmdlet'ini kullanın Save-Help
. Ardından, kaydedilen güncelleştirilmiş yardım içeriğinin konumunu belirtmek için sourcepath parametresini Update-Help
kullanın.
Get-Command
Get-Command
, komutları bulmanıza yardımcı olan başka bir çok amaçlı komutdur. Herhangi bir parametre olmadan çalıştırdığınızda Get-Command
, sisteminizdeki tüm PowerShell komutlarının listesini döndürür.
komutuna benzer bir komut söz dizimi almak için Get-Help
de kullanabilirsinizGet-Command
.
için söz dizimini Get-Command
nasıl belirlersiniz? Bu bölümün Yardım Al bölümünde gösterildiği gibi için yardım makalesini görüntülemek için Get-Command
kullanabilirsinizGet-Help
. Herhangi bir komutun söz dizimini görüntülemek için Sözdizimi parametresiyle de kullanabilirsinizGet-Command
. Bu kısayol, yardım içeriğinde gezinmeden bir komutun nasıl kullanılacağını hızla belirlemenize yardımcı olur.
Get-Command -Name Get-Command -Syntax
Get-Command
Söz dizimi parametresiyle kullanıldığında, parametreler ve bunların değer türlerini gösteren söz diziminin daha kısa bir görünümü sağlanır ve bu görünümde, gösteriler gibi Get-Help
izin verilebilen belirli değerler listelenmez.
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>]
Komut kullanma hakkında daha ayrıntılı bilgilere ihtiyacınız varsa komutunu kullanın Get-Help
.
help Get-Command -Full
öğesinin Get-Help
SÖZ DIZIMİ bölümü, parametreler için numaralandırılmış değerleri genişleterek daha kolay bir görüntü sağlar. Kullanabileceğiniz gerçek değerleri gösterir ve kullanılabilir seçenekleri daha kolay anlayabilirsiniz.
...
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>]
...
için Get-Command
yardımın PARAMETERS bölümü Name, Name ve Verb parametrelerinin joker karakterleri kabul ettiğini gösterir.
...
-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, Name parametresinin Get-Command
değeriyle joker karakter kullanılır*
.
Get-Command -Name *service*
Joker karakterleri name parametresiyle Get-Command
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 Get-Command
kullanarak sonuçlarını PowerShell komutlarına sınırlayabilirsiniz.
Get-Command -Name *service* -CommandType Cmdlet, Function, Alias, Script
Yalnızca PowerShell komutlarında fiiller ve isimler olduğundan, başka bir seçenek de Fiil veya İsim parametresini ya da her ikisini birden kullanmak olabilir.
Aşağıdaki örnek, bilgisayarınızda işlemlerle çalışan komutları bulmak için kullanır Get-Command
.
İsim parametresini kullanın ve değeri olarak belirtinProcess
.
Get-Command -Noun Process
CommandType 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 ve Get-Command
ile Get-Help
komutları bulmayı öğrendiniz. Ayrıca, komutları bulduğunuzda nasıl kullanacağınızı anlamak için yardım sistemini kullanmayı da öğrendiniz. Ayrıca, yeni yardım içeriği kullanılabilir olduğunda bilgisayarınızdaki yardım sistemini nasıl güncelleştirebilirsiniz?
İnceleyin
- DisplayName parametresi
Get-Service
konumsal mı? - Cmdlet'in
Get-Process
kaç parametre kümesi var? - Olay günlükleriyle çalışmak için hangi PowerShell komutları var?
- 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üncelleştirirsiniz?
Başvurular
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
Sonraki bölümde nesneler, özellikler, yöntemler ve Get-Member
cmdlet hakkında bilgi edineceksiniz.
PowerShell