Wanneer ons met PowerShell werk, is die eerste ding wat ons teëkom opdragte (Cmdlets).
Die opdragoproep lyk soos volg:
Verb-Noun -Parameter1 ValueType1 -Parameter2 ValueType2[]
help
Hulp word in PowerShell verkry deur die Get-Help-opdrag te gebruik. Jy kan een van die parameters spesifiseer: voorbeeld, gedetailleerd, vol, aanlyn, showWindow.
Get-Help Get-Service -full sal 'n volledige beskrywing gee van hoe die Get-Service-opdrag werk
Get-Help Get-S* sal alle beskikbare opdragte en funksies wys wat begin met Get-S*
Daar is ook gedetailleerde dokumentasie op die amptelike Microsoft-webwerf.
Hier is 'n voorbeeldhulp vir die Get-Evenlog-opdrag
As parameters in vierkantige hakies [], is dit opsioneel.
Dit wil sê, in hierdie voorbeeld is die naam van die joernaal self verpligtend, en die naam van die parameter
As u na die EntryType-parameter kyk, kan u die waardes sien wat in krullerige hakies ingesluit is. Vir hierdie parameter kan ons slegs voorafbepaalde waardes in krullerige hakies gebruik.
Ons kan inligting sien of die parameter vereis word in die beskrywing hieronder in die Vereiste-veld. In die voorbeeld hierbo is die After-kenmerk opsioneel omdat Required op vals gestel is. Volgende sien ons die Posisie-veld oorkant wat sê Named. Dit beteken dat die parameter slegs deur die naam verkry kan word, dit is:
Get-EventLog -LogName Application -After 2020.04.26
Aangesien die LogName-parameter die nommer 0 gespesifiseer het in plaas van Named, beteken dit dat ons toegang tot die parameter kan kry sonder 'n naam, maar deur dit in die vereiste volgorde te spesifiseer:
Get-EventLog Application -After 2020.04.26
Kom ons neem hierdie volgorde aan:
Get-EventLog -Newest 5 Application
alias
Sodat ons bekende opdragte vanaf die konsole kan gebruik, het PowerShell aliasse (Alias).
'n Voorbeeld-alias vir die Stel-ligging-opdrag is cd.
Dit wil sê, in plaas daarvan om die opdrag te roep
Set-Location “D:”
ons kan gebruik
cd “D:”
Geskiedenis
Om die geskiedenis van beveloproepe te sien, kan jy Get-History gebruik
Voer opdrag uit die geskiedenis Invoke-History 1; Oproep-geskiedenis 2
Maak geskiedenis skoon Maak geskiedenis skoon
Pyplyn
'n Pyplyn in powershell is wanneer die resultaat van die eerste funksie na die tweede oorgedra word. Hier is 'n voorbeeld van die gebruik van die pyplyn:
Get-Verb | Measure-Object
Maar om die pyplyn beter te verstaan, kom ons neem 'n eenvoudiger voorbeeld. Daar is 'n span
Get-Verb "get"
As ons die Get-Help Kry-Verb -Full help noem, sal ons sien dat die Werkwoord parameter pyplyninvoer aanvaar en ByValue word tussen hakies geskryf.
Dit beteken dat ons Get-Verb "kry" kan herskryf na "kry" | Kry-Verb.
Dit wil sê, die resultaat van die eerste uitdrukking is 'n string en dit word na die Werkwoord-parameter van die Get-Verb-opdrag deurgegee via pyplyn-invoer deur waarde.
Ook pyplyn-invoer kan ByPropertyName wees. In hierdie geval sal ons 'n voorwerp deurgee wat 'n eienskap het met 'n soortgelyke naam Werkwoord.
Veranderlikes
Veranderlikes is nie sterk getik nie en word gespesifiseer met 'n $-simbool voor
$example = 4
Die > simbool beteken plaas data in
Byvoorbeeld, $voorbeeld > File.txt
Met hierdie uitdrukking sal ons die data van die $voorbeeld veranderlike in 'n lêer plaas
Dieselfde as Set-Content -Value $voorbeeld -Path File.txt
skikkings
Skikkingsinisiasie:
$ArrayExample = @(“First”, “Second”)
Inisialiseer 'n leë skikking:
$ArrayExample = @()
Kry 'n waarde volgens indeks:
$ArrayExample[0]
Kry die hele skikking:
$ArrayExample
Voeg 'n element by:
$ArrayExample += “Third”
$ArrayExample += @(“Fourth”, “Fifth”)
Sorteer deur:
$ArrayExample | Sort
$ArrayExample | Sort -Descending
Maar die skikking self bly onveranderd tydens hierdie sortering. En as ons wil hê dat die skikking gesorteerde data moet hê, moet ons gesorteerde waardes toewys:
$ArrayExample = $ArrayExample | Sort
Daar is geen werklike manier om 'n element uit 'n skikking in PowerShell te verwyder nie, maar jy kan dit op hierdie manier doen:
$ArrayExample = $ArrayExample | where { $_ -ne “First” }
$ArrayExample = $ArrayExample | where { $_ -ne $ArrayExample[0] }
Verwydering van 'n skikking:
$ArrayExample = $null
loops
Lus sintaksis:
for($i = 0; $i -lt 5; $i++){}
$i = 0
while($i -lt 5){}
$i = 0
do{} while($i -lt 5)
$i = 0
do{} until($i -lt 5)
ForEach($item in $items){}
Verlaat die breeklus.
Verlaat die voortgaan-element.
Voorwaardelike verklarings
if () {} elseif () {} else
switch($someIntValue){
1 { “Option 1” }
2 { “Option 2” }
default { “Not set” }
}
funksie
Funksie definisie:
function Example () {
echo &args
}
Loopfunksie:
Example “First argument” “Second argument”
Definieer argumente in 'n funksie:
function Example () {
param($first, $second)
}
function Example ($first, $second) {}
Loopfunksie:
Example -first “First argument” -second “Second argument”
Uitsondering
try{
} catch [System.Net.WebException],[System.IO.IOException]{
} catch {
} finally{
}
Bron: will.com