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
Ako su parametri zatvoreni u uglastim zagradama [], onda su opcioni.
To jest, u ovom primjeru je potrebno ime samog dnevnika i ime parametra
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.
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