PowerShell algajatele

PowerShelli kasutamisel on esimene asi, millega silmitsi seisame, käsk (Cmdlet).
Käsk on järgmine:

Verb-Noun -Parameter1 ValueType1 -Parameter2 ValueType2[]

Abi

PowerShellis saab abiteavet hankida käsuga Get-Help. Saate määrata ühe järgmistest parameetritest: example, detailed, full, online, showWindow.

Get-Help Get-Service -full tagastab täispika kirjelduse käsu Get-Service toimimisest.
Get-Help Get-S* näitab kõiki saadaval olevaid käske ja funktsioone, mis algavad Get-S*.

Samuti on Microsofti ametlikul veebisaidil põhjalik dokumentatsioon.

Siin on näide käsu Get-Evenlog abiteabest.

PowerShell algajatele

Kui parameetrid on sulgudes [], on need valikulised.
See tähendab, et antud näites on ajakirja nimi kohustuslik, kuid parameetri nimi ei ole. Kui parameetri tüüp ja nimi on koos sulgudes, on see parameeter valikuline.

Kui vaatate parameetrit EntryType, siis näete väärtusi, mis on suletud kaarvõre alla. Selle parameetri puhul saame kasutada ainult eeldefineeritud väärtusi kaarvõre all.

Teave selle kohta, kas parameeter on kohustuslik, on nähtav allpool, väljas Required. Ülaltoodud näites on atribuut After valikuline, kuna Required'i ees on vale.

Get-EventLog -LogName Application -After 2020.04.26

Kuna parameetri LogName ees ei olnud Named, vaid number 0, siis saame seda parameetrit kasutada ilma nimeta, lihtsalt vajalikus järjestuses:

Get-EventLog Application -After 2020.04.26

Oletame, et ka selline järjekord:

Get-EventLog -Newest 5 Application

Alias

Et saaksime kasutada harjutatud käske konsoolist PowerShell'is, on meil pseudonüümid (Alias).

Näide pseudonüümist käsule Set-Location on cd.

See tähendab, et selle asemel, et kutsuda käsku

Set-Location “D:”

võime kasutada

cd “D:”

Ajalugu

Käskyde ajalugu vaatamiseks võime kasutada Get-History

Käsku ajaloost käivitamiseks: Invoke-History 1; Invoke-History 2

Ajaloo puhastamiseks: Clear-History

Pipeline

Pipelines PowerShell'is tähendab, et esimese funktsiooni tulemus edastatakse teisele. Siin on näide pipelini kasutamisest:

Get-Verb | Measure-Object

Kuid et paremini mõista torustikku, vaatame lihtsamat näidet. On käsk

Get-Verb "get"

Kui kutsuda välja abi Get-Help Get-Verb -Full, siis näeme, et parameeter Verb aktsepteerib pipline'i sisendit ja sulgudes on kirjas ByValue.

PowerShell algajatele

See tähendab, et saame ümber kirjutada Get-Verb "get" kui "get" | Get-Verb.
See tähendab, et esimese väljendi tulemus on string ja see edastatakse parameetrile Verb käsus Get-Verb läbi pipline'i sisendi väärtuse kaudu.
Samuti võib pipline'i sisend olla ByPropertyName. Sellisel juhul edastame objekti, millel on omadus, mille nimi sarnaneb Verb'iga.

Muutujad

Muudatused ei ole rangelt tüüpitud ja need määratakse sümboliga $ ees.

$example = 4

Sümbol > tähendab andmete asetamist
Näiteks $example > File.txt
Selle väljendi abil paneme muutuja $example andmed faili
Sarnane käsule Set-Content -Value $example -Path File.txt

Massiivid

Massiivi initsialiseerimine:

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

Tühi massiiv:

$ArrayExample = @()

Väärtuse saamine indeksist:

$ArrayExample[0]

Kogu massiivi saamine:

$ArrayExample

Elemendi lisamine:

$ArrayExample += “Third”

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

Sorteerimine:

$ArrayExample | Sort

$ArrayExample | Sort -Descending

Kuid massiiv sellise järjestuse korral jääb muutumatuks. Ja kui tahame, et massiivis oleks järjestatud andmed, peame määrama järjestatud väärtused:

$ArrayExample = $ArrayExample | Sort

Elemendi eemaldamist massiivist PowerShellis ei toimu, kuid võime teha seda järgmisel viisil:

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

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

Massiivi eemaldamine:

$ArrayExample = $null

Tsüklid

Tsüklite 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){}

Tsüklist väljuda break.

Elemendi vahelejätmine continue.

Tingimuslausungid

if () {} elseif () {} else

switch($someIntValue){
  1 { “Valik 1” }
  2 { “Valik 2” }
  default { “Ei ole seadistatud” }
}

Function

Funktsiooni määratlemine:

function Example () {
  echo &args
}

Funktsiooni käivitamine:

Example “Esimene argument” “Teine argument”

Funktsiooni argumentide määratlemine:

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

function Example ($first, $second) {}

Funktsiooni käivitamine:

Example -first “Esimene argument” -second “Teine argument”

Erand

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

Allikas: habr.com

Osta usaldusväärne veebihosting DDoS kaitsega, VPS VDS serverid 🔥 Osta usaldusväärne veebihosting DDoS kaitsega, VPS VDS serverid | ProHoster