PowerShell za početnike

Kada radimo sa PowerShell-om, prva stvar na koju nailazimo su komande (Cmdlets).
Poziv komande izgleda ovako:

Verb-Noun -Parameter1 ValueType1 -Parameter2 ValueType2[]

pomoći

Pomoći u PowerShell-u se pristupa pomoću komande Get-Help. Može se odrediti jedan od parametara: primjer, detaljan, puni, online, showWindow.

Get-Help Get-Service -full će vratiti puni opis operacije Get-Service naredbe
Get-Help Get-S* će pokazati sve dostupne komande i funkcije počevši od Get-S*

Detaljna dokumentacija postoji i na službenoj Microsoft web stranici.

Evo primjera pomoći za naredbu Get-Evenlog

PowerShell za početnike

Ako su parametri zatvoreni u uglastim zagradama [], onda su opcioni.
To jest, u ovom primjeru je potrebno ime samog dnevnika i ime parametra br. Ako su tip parametra i njegovo ime zajedno u zagradama, onda je ovaj parametar opcionalan.

Ako pogledate parametar EntryType, možete vidjeti vrijednosti koje su zatvorene u vitičaste zagrade. Za ovaj parametar možemo koristiti samo unaprijed definirane vrijednosti u vitičastim zagradama.

Informacije o tome da li je parametar obavezan možete vidjeti u opisu ispod u polju Obavezno. U gornjem primjeru, atribut After nije obavezan jer je Required postavljen na false. Zatim vidimo polje Position na suprotnoj strani koje kaže Imenovano. To znači da se na parametar možete pozivati ​​samo po imenu, odnosno:

Get-EventLog -LogName Application -After 2020.04.26

Budući da je parametar LogName imao broj 0 umjesto Named, to znači da se možemo pozvati na parametar bez imena, ali navođenjem u željenom nizu:

Get-EventLog Application -After 2020.04.26

Pretpostavimo ovaj redoslijed:

Get-EventLog -Newest 5 Application

pseudonim

Da bismo mogli da koristimo uobičajene komande sa konzole u PowerShell-u, postoje aliasi (Alias).

Primjer aliasa za naredbu Set-Location je cd.

To jest, umjesto pozivanja komande

Set-Location “D:”

možemo koristiti

cd “D:”

istorija

Da biste vidjeli historiju komandnih poziva, možete koristiti Get-History

Izvrši naredbu iz istorije Invoke-History 1; Pozovite historiju 2

Clear-History

cjevovod

Cjevovod u powershell-u je kada se rezultat prve funkcije prosljeđuje drugoj. Evo primjera korištenja cjevovoda:

Get-Verb | Measure-Object

Ali da bismo bolje razumjeli cevovod, uzmimo jednostavniji primjer. Imam tim

Get-Verb "get"

Ako pozovemo Get-Help Get-Verb -Full pomoć, vidjet ćemo da parametar Verb uzima ulazni ulaz i ByValue je napisano u zagradama.

PowerShell za početnike

To znači da možemo prepisati Get-Glagol "get" u "get" | Get Verb.
To jest, rezultat prvog izraza je string i on se prosljeđuje parametru Verb naredbe Get-Verb putem unosa cjevovoda po vrijednosti.
Unos cjevovoda također može biti ByPropertyName. U ovom slučaju ćemo proslijediti objekt koji ima svojstvo sa sličnim imenom Glagol.

varijable

Varijable nisu strogo tipizirane i specificirane su sa $ ispred

$example = 4

Simbol > znači unos podataka
Na primjer, $example > File.txt
Sa ovim izrazom ćemo staviti podatke iz varijable $example u datoteku
Isto kao Set-Content -Value $example -Path File.txt

Nizovi

Inicijalizacija niza:

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

Inicijalizacija praznog niza:

$ArrayExample = @()

Dobivanje vrijednosti po indeksu:

$ArrayExample[0]

Dobijte cijeli niz:

$ArrayExample

Dodavanje elementa:

$ArrayExample += “Third”

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

Sortiranje:

$ArrayExample | Sort

$ArrayExample | Sort -Descending

Ali sam niz ostaje nepromijenjen sa ovim sortiranjem. A ako želimo da niz ima sortirane podatke, onda moramo dodijeliti sortirane vrijednosti:

$ArrayExample = $ArrayExample | Sort

Ne postoji način da uklonite element iz niza u PowerShell-u, ali to možete učiniti ovako:

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

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

Uklanjanje niza:

$ArrayExample = $null

Petlje

Sintaksa petlje:

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

Izađite iz prekidne petlje.

Preskočite nastavak elementa.

Uslovne izjave

if () {} elseif () {} else

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

funkcija

Definicija funkcije:

function Example () {
  echo &args
}

Pokretanje funkcije:

Example “First argument” “Second argument”

Definiranje argumenata u funkciji:

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

function Example ($first, $second) {}

Pokretanje funkcije:

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

Izuzetak

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

izvor: www.habr.com

Dodajte komentar