PowerShell algajatele

PowerShelliga töötades kohtame esimese asjana käsud (cmdletid).
Käsukõne näeb välja selline:

Verb-Noun -Parameter1 ValueType1 -Parameter2 ValueType2[]

aitama

PowerShelli spikri juurde pääseb käsu Get-Help abil. Määrata saab ühe parameetritest: näide, detailne, täielik, võrgus, showWindow.

Get-Help Get-Service -full tagastab käsu Get-Service töö täieliku kirjelduse
Get-Help Get-S* näitab kõiki saadaolevaid käske ja funktsioone alates Get-S*

Üksikasjalik dokumentatsioon on ka Microsofti ametlikul veebisaidil.

Siin on Get-Evenlog käsu abi näide

PowerShell algajatele

Kui parameetrid on nurksulgudes [], on need valikulised.
See tähendab, et selles näites on nõutav logi enda nimi ja parameetri nimi Ei. Kui parameetri tüüp ja selle nimi on sulgudes koos, on see parameeter valikuline.

Kui vaatate parameetrit EntryType, näete väärtusi, mis on suletud sulgudes. Selle parameetri puhul saame kasutada ainult eelmääratletud väärtusi lokkis sulgudes.

Teavet selle kohta, kas parameeter on nõutav, näete allolevas kirjelduses väljal Nõutav. Ülaltoodud näites on atribuut After valikuline, kuna Required on seatud väärtusele Väär. Järgmisena näeme vastas asuvat välja Position, mis ütleb Nimega. See tähendab, et saate parameetrile viidata ainult nime järgi, see tähendab:

Get-EventLog -LogName Application -After 2020.04.26

Kuna parameetril LogName oli Named asemel number 0, siis see tähendab, et saame parameetrile viidata ka ilma nimeta, kuid täpsustades selle soovitud järjekorras:

Get-EventLog Application -After 2020.04.26

Oletame, et järgmine järjekord:

Get-EventLog -Newest 5 Application

Teise nimega

Selleks, et saaksime kasutada PowerShelli konsooli tavalisi käske, on olemas varjunimed (Alias).

Käsu Set-Location näiteks varjunimeks on cd.

See tähendab, et käsu kutsumise asemel

Set-Location “D:”

saame kasutada

cd “D:”

ajalugu

Käsukutsete ajaloo vaatamiseks võite kasutada rakendust Get-History

Käivita ajaloost käsk Invoke-History 1; Kutsu ajalugu 2

Selge ajalugu

Torujuhe

Powershelli konveier on siis, kui esimese funktsiooni tulemus edastatakse teisele. Siin on näide torujuhtme kasutamisest:

Get-Verb | Measure-Object

Kuid torujuhtme paremaks mõistmiseks võtame lihtsama näite. Sai meeskonna

Get-Verb "get"

Kui helistate Get-Help Get-Verb -Full spikkerile, siis näeme, et parameeter Verb võtab pipline sisendi ja ByValue kirjutatakse sulgudesse.

PowerShell algajatele

See tähendab, et saame Get-Verbi "get" ümber kirjutada sõnaks "saada" | Hangi tegusõna.
See tähendab, et esimese avaldise tulemuseks on string ja see edastatakse käsu Get-Verb parameetrile Verb pipline-sisendi kaudu väärtuse järgi.
Pipline sisend võib olla ka ByPropertyName. Sel juhul edastame objekti, millel on omadus sarnase nimega Verb.

Muutujad

Muutujad ei ole tugevasti trükitud ja nende ees on $

$example = 4

Sümbol > tähendab andmete sisestamist
Näiteks $example > File.txt
Selle avaldise abil paneme muutuja $example andmed faili
Sama mis Set-Content -Väärtus $näide -Path File.txt

Massiraadid

Massiivi initsialiseerimine:

$ArrayExample = @(“First”, “Second”)

Tühja massiivi initsialiseerimine:

$ArrayExample = @()

Väärtuse saamine indeksi järgi:

$ArrayExample[0]

Hankige kogu massiiv:

$ArrayExample

Elemendi lisamine:

$ArrayExample += “Third”

$ArrayExample += @(“Fourth”, “Fifth”)

Sorteeri:

$ArrayExample | Sort

$ArrayExample | Sort -Descending

Kuid massiiv ise jääb selle sorteerimisega muutumatuks. Ja kui tahame, et massiivi andmed oleksid sorteeritud, peame määrama sorteeritud väärtused:

$ArrayExample = $ArrayExample | Sort

PowerShellis pole võimalik elementi massiivist eemaldada, kuid saate seda teha järgmiselt:

$ArrayExample = $ArrayExample | where { $_ -ne “First” }

$ArrayExample = $ArrayExample | where { $_ -ne $ArrayExample[0] }

Massiivi eemaldamine:

$ArrayExample = $null

Silmus

Silmuse süntaks:

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){}

Väljuge katkestusahelast.

Jätka element vahele.

Tingimuslikud avaldused

if () {} elseif () {} else

switch($someIntValue){
  1 { “Option 1” }
  2 { “Option 2” }
  default { “Not set” }
}

funktsioon

Funktsiooni määratlus:

function Example () {
  echo &args
}

Funktsiooni käivitamine:

Example “First argument” “Second argument”

Funktsiooni argumentide määratlemine:

function Example () {
  param($first, $second)
}

function Example ($first, $second) {}

Funktsiooni käivitamine:

Example -first “First argument” -second “Second argument”

Erand

try{
} catch [System.Net.WebException],[System.IO.IOException]{
} catch {
} finally{
}

Allikas: www.habr.com

Lisa kommentaar