PowerShell pre začiatočníkov

Pri práci s PowerShell sa ako prvé stretávame s príkazmi (Cmdlets).
Volanie príkazu vyzerá takto:

Verb-Noun -Parameter1 ValueType1 -Parameter2 ValueType2[]

Pomoc

Pomocník je dostupný v prostredí PowerShell pomocou príkazu Get-Help. Môžete zadať jeden z parametrov: príklad, podrobný, plný, online, showWindow.

Get-Help Get-Service -full vráti úplný popis toho, ako funguje príkaz Get-Service
Get-Help Get-S* zobrazí všetky dostupné príkazy a funkcie počnúc Get-S*

Na oficiálnej stránke Microsoftu je aj podrobná dokumentácia.

Tu je príklad pomoci pre príkaz Get-Evenlog

PowerShell pre začiatočníkov

Ak sú parametre uzavreté v hranatých zátvorkách [], sú voliteľné.
To znamená, že v tomto príklade je povinný názov samotného žurnálu a názov parametra Nie Ak sú typ parametra a jeho názov spolu uzavreté v zátvorkách, potom je parameter voliteľný.

Ak sa pozriete na parameter EntryType, môžete vidieť hodnoty, ktoré sú uzavreté v zložených zátvorkách. Pre tento parameter môžeme použiť iba preddefinované hodnoty v zložených zátvorkách.

Informáciu o tom, či je parameter povinný, môžeme vidieť v popise nižšie v poli Povinné. Vo vyššie uvedenom príklade je atribút After voliteľný, pretože Povinné je nastavené na hodnotu false. Ďalej vidíme pole Pozícia oproti, ktoré hovorí Pomenované. To znamená, že k parametru je možné pristupovať iba podľa názvu, tj:

Get-EventLog -LogName Application -After 2020.04.26

Keďže parameter LogName mal namiesto Named zadané číslo 0, znamená to, že k parametru môžeme pristupovať bez názvu, ale zadaním v požadovanom poradí:

Get-EventLog Application -After 2020.04.26

Predpokladajme toto poradie:

Get-EventLog -Newest 5 Application

Prezývka

Aby sme mohli používať známe príkazy z konzoly, PowerShell má aliasy (Alias).

Príkladom aliasu pre príkaz Set-Location je cd.

Teda namiesto volania príkazu

Set-Location “D:”

môžeme použiť

cd “D:”

História

Ak chcete zobraziť históriu volaní príkazov, môžete použiť funkciu Get-History

Vykonať príkaz z histórie Invoke-History 1; Vyvolať históriu 2

Vymazať históriu Vymazať históriu

Potrubie

Potrubie v powershell je, keď sa výsledok prvej funkcie odovzdá druhej. Tu je príklad použitia potrubia:

Get-Verb | Measure-Object

Ale aby sme lepšie porozumeli plynovodu, zoberme si jednoduchší príklad. Existuje tím

Get-Verb "get"

Ak zavoláme Get-Help Get-Verb -Full help, uvidíme, že parameter Verb akceptuje pipline vstup a ByValue je napísané v zátvorkách.

PowerShell pre začiatočníkov

To znamená, že môžeme prepísať Get-Verb „get“ na „get“ | Get-Verb.
To znamená, že výsledkom prvého výrazu je reťazec a je odovzdaný parametru Verb príkazu Get-Verb cez pipline vstup podľa hodnoty.
Pipline vstup môže byť aj ByPropertyName. V tomto prípade prejdeme objekt, ktorý má vlastnosť s podobným názvom Sloveso.

Premenné

Premenné nie sú silne zadávané a sú označené symbolom $ na začiatku

$example = 4

Symbol > znamená vložiť údaje
Napríklad $example > Súbor.txt
Týmto výrazom umiestnime údaje z premennej $example do súboru
Rovnaké ako Set-Content -Value $example -Path File.txt

poľa

Inicializácia poľa:

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

Inicializácia prázdneho poľa:

$ArrayExample = @()

Získanie hodnoty podľa indexu:

$ArrayExample[0]

Získajte celé pole:

$ArrayExample

Pridanie prvku:

$ArrayExample += “Third”

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

Radiť podľa:

$ArrayExample | Sort

$ArrayExample | Sort -Descending

Ale samotné pole zostáva počas tohto triedenia nezmenené. A ak chceme, aby pole malo zoradené údaje, musíme priradiť zoradené hodnoty:

$ArrayExample = $ArrayExample | Sort

Neexistuje žiadny skutočný spôsob, ako odstrániť prvok z poľa v PowerShell, ale môžete to urobiť takto:

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

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

Odstránenie poľa:

$ArrayExample = $null

Loops

Syntax cyklu:

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

Vystúpte z prerušovacej slučky.

Vynechanie prvku pokračovania.

Podmienečné vyhlásenia

if () {} elseif () {} else

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

Funkcie

Definícia funkcie:

function Example () {
  echo &args
}

Funkcia behu:

Example “First argument” “Second argument”

Definovanie argumentov vo funkcii:

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

function Example ($first, $second) {}

Funkcia behu:

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

výnimka

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

Zdroj: hab.com

Pridať komentár