PowerShell pradedantiesiems

Dirbdami su „PowerShell“ pirmiausia susiduriame su komandos (Cmdlet).
Komandos iškvietimas atrodo taip:

Verb-Noun -Parameter1 ValueType1 -Parameter2 ValueType2[]

Pagalba

Žinynas pasiekiamas PowerShell naudojant komandą Get-Help. Galite nurodyti vieną iš parametrų: pavyzdys, detalus, pilnas, internetinis, rodomas langas.

Get-Help Get-Service -full pateiks išsamų aprašymą, kaip veikia komanda Get-Service
Get-Help Get-S* parodys visas galimas komandas ir funkcijas, pradedant nuo Get-S*

Išsamią dokumentaciją taip pat rasite oficialioje „Microsoft“ svetainėje.

Čia yra „Get-Evenlog“ komandos pagalbos pavyzdys

PowerShell pradedantiesiems

Jei parametrai yra laužtiniuose skliaustuose [], jie yra neprivalomi.
Tai yra, šiame pavyzdyje privalomas paties žurnalo pavadinimas ir parametro pavadinimas Nr. Jei parametro tipas ir jo pavadinimas kartu pateikiami skliausteliuose, parametras yra neprivalomas.

Jei pažvelgsite į parametrą EntryType, pamatysite reikšmes, kurios yra įtrauktos į riestinius skliaustus. Šiam parametrui galime naudoti tik iš anksto nustatytas reikšmes sulenktuose skliaustuose.

Informaciją apie tai, ar parametras reikalingas, galime pamatyti žemiau esančiame aprašyme, esančiame lauke Reikalingas. Aukščiau pateiktame pavyzdyje atributas After yra neprivalomas, nes Reikalingas nustatytas į false. Toliau matome priešais esantį lauką Pozicija, kuriame rašoma Pavadinta. Tai reiškia, kad parametrą galima pasiekti tik pagal pavadinimą, ty:

Get-EventLog -LogName Application -After 2020.04.26

Kadangi parametre LogName vietoj Named buvo nurodytas skaičius 0, tai reiškia, kad parametrą galime pasiekti be pavadinimo, o nurodę jį reikiama seka:

Get-EventLog Application -After 2020.04.26

Tarkime, tokia tvarka:

Get-EventLog -Newest 5 Application

Pravardė

Kad galėtume naudoti pažįstamas komandas iš konsolės, „PowerShell“ turi slapyvardžius (Alias).

Komandos Set-Location slapyvardžio pavyzdys yra cd.

Tai yra, užuot iškvietę komandą

Set-Location “D:”

galime naudoti

cd “D:”

Istorija

Norėdami peržiūrėti komandų iškvietimų istoriją, galite naudoti Get-History

Vykdyti komandą iš istorijos Invoke-History 1; Iškvieskite istoriją 2

Išvalyti istoriją Išvalyti istoriją

Naftotiekis

„Powershell“ konvejeris yra tada, kai pirmosios funkcijos rezultatas perduodamas antrajai funkcijai. Štai dujotiekio naudojimo pavyzdys:

Get-Verb | Measure-Object

Tačiau norėdami geriau suprasti dujotiekį, paimkime paprastesnį pavyzdį. Yra komanda

Get-Verb "get"

Jei pavadinsime Get-Help Get-Verb -Full pagalba, pamatysime, kad parametras Verb priima dujotiekio įvestį, o skliausteliuose rašoma ByValue.

PowerShell pradedantiesiems

Tai reiškia, kad galime perrašyti „Get-Verb“ „gauti“ į „gauti“ | Get-Verb.
Tai reiškia, kad pirmosios išraiškos rezultatas yra eilutė ir ji perduodama komandos Get-Verb parametrui Verb per konvejerio įvestį pagal reikšmę.
Taip pat konvejerinė įvestis gali būti ByPropertyName. Tokiu atveju mes perduodame objektą, kuris turi savybę panašiu pavadinimu Veiksmažodis.

Kintamieji

Kintamieji nėra griežtai įvedami ir nurodomi su $ simboliu priekyje

$example = 4

Simbolis > reiškia įvesti duomenis
Pavyzdžiui, $example > Failas.txt
Su šia išraiška mes patalpinsime duomenis iš $example kintamojo į failą
Tas pats, kaip Set-Content -Value $example -Path File.txt

Masyvai

Masyvo inicijavimas:

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

Tuščio masyvo inicijavimas:

$ArrayExample = @()

Vertės gavimas pagal indeksą:

$ArrayExample[0]

Gaukite visą masyvą:

$ArrayExample

Elemento pridėjimas:

$ArrayExample += “Third”

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

Rūšiuoti pagal:

$ArrayExample | Sort

$ArrayExample | Sort -Descending

Tačiau pats masyvas šio rūšiavimo metu išlieka nepakitęs. Ir jei norime, kad masyve būtų surūšiuoti duomenys, turime priskirti surūšiuotas reikšmes:

$ArrayExample = $ArrayExample | Sort

Nėra tikro būdo pašalinti elementą iš masyvo „PowerShell“, bet galite tai padaryti taip:

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

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

Masyvo pašalinimas:

$ArrayExample = $null

Kilpos

Ciklo sintaksė:

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

Išeikite iš pertraukos kilpos.

Tęsimo elemento praleidimas.

Sąlyginiai pareiškimai

if () {} elseif () {} else

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

Funkcija

Funkcijos apibrėžimas:

function Example () {
  echo &args
}

Bėgimo funkcija:

Example “First argument” “Second argument”

Funkcijos argumentų apibrėžimas:

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

function Example ($first, $second) {}

Bėgimo funkcija:

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

Išimtis

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

Šaltinis: www.habr.com

Добавить комментарий