PowerShell për fillestarët

Kur punojmë me PowerShell, gjëja e parë që hasim janë komandat (Cmdlet).
Thirrja e komandës duket kështu:

Verb-Noun -Parameter1 LlojiVlera1 -Parameter2 LlojiVlera2[]

Ndihmë

Thirrja e ndihmës në PowerShell bëhet me komandën Get-Help. Mund të përcaktoni një nga parametrat: example, detailed, full, online, showWindow.

Get-Help Get-Service -full do të kthejë përshkrimin e plotë të funksionimit të komandës Get-Service.
Get-Help Get-S* do të tregojë të gjitha komandat dhe funksionet që fillojnë me Get-S*.

Po ashtu, në faqen zyrtare të Microsoft ka dokumentacion të detajuar.

Ja një shembull i ndihmës për komandën Get-Evenlog.

PowerShell për fillestarët

Nëse parametrat janë të mbyllur në katrorë [], ata janë të zgjedhshëm.
Pra, në këtë shembull emri i vetë regjistrit është i detyrueshëm, ndërsa emri i parametrave nuk është. Nëse lloji i parametrave dhe emri i tij janë të mbyllur së bashku në kllapa, atëherë ky parameter është i zgjedhshëm.

Nëse shikojmë parametrin EntryType, shohim vlerat që janë të mbyllura në kllapa të mëdha. Për këtë parameter ne mund të përdorim vetëm vlerat e paracaktuara në kllapa të mëdha.

Informacioni nëse parametri është i detyrueshëm mund ta shohim në përshkrimin më poshtë në fushën Required. Në shembullin e mësipërm, atributi After është opsional, pasi përballë Required shkruhet false. Më pas shohim fushën Position përballë së cilës është shkruar Named. Kjo tregon se mund t'i qasemi parametrave vetëm me emër, pra:

Get-EventLog -LogName Application -After 2020.04.26

Pasi për parametrin LogName në vend të Named është dhënë numri 0, kjo do të thotë se mund ta qasemi parametrin pa emër, duke e përcaktuar në rendin e duhur:

Get-EventLog Application -After 2020.04.26

Le të supozojmë një rend të tillë:

Get-EventLog -Newest 5 Application

Alias

Për të përdorur komandat që njohim nga konsola në PowerShell, ka pseudonime (Alias).

Shembulli i pseudonimit për komandën Set-Location është cd.

Pra, në vend që të thërrasim komandën

Set-Location “D:”

mund të përdorim

cd “D:”

Historia

Për të parë historinë e thirrjeve të komandave mund të përdorim Get-History.

Të ekzekutojmë komandën nga historia Invoke-History 1; Invoke-History 2

Të pastrojmë historinë Clear-History

Pipeline

Pajisja në PowerShell është kur rezultati i ekzekutimit të funksionit të parë kalon te i dyti. Ja një shembull i përdorimit të pajisjes:

Get-Verb | Measure-Object

Por të kuptuar më mirë pipeline-in, le të marrim një shembull më të thjeshtë. Ka një komandë

Get-Verb "get"

Nëse thërrasim ndihmën Get-Help Get-Verb -Full, do të shohim se parametri Verb merr inputin e pipeline-it dhe në kllapa shkruhet ByValue.

PowerShell për fillestarët

Kjo do të thotë se mund të rishkruajmë Get-Verb "get" në "get" | Get-Verb.
Pra, rezultati i shprehjes së parë është një varg dhe ai kalon në parametrin Verb të komandës Get-Verb përmes inputit të pipeline-it sipas vlerës.
Gjithashtu, inputi i pipeline-it mund të jetë ByPropertyName. Në këtë rast, ne do të kalojmë një objekt që ka një pronë me emrin e ngjashëm Verb.

Variablat

Variablat nuk janë të tipizuara në mënyrë strikte dhe caktohen me shenjën $ përpara

$example = 4

Simboli > tregon të vendosësh të dhënat në
Për shembull, $example > File.txt
Me këtë shprehje do të vendosim të dhënat nga variabla $example në skedarin
Njësoj si komandës Set-Content -Value $example -Path File.txt

Array-t

Inicimi i një array-i:

$ArrayExample = @("First", "Second")

Inicimi i një array-i të zbrazët:

$ArrayExample = @()

Marrja e vlerës sipas indeksit:

$ArrayExample[0]

Merrni të gjithë array-in:

$ArrayExample

Shtimi i elementit:

$ArrayExample += "Third"

$ArrayExample += @("Fourth", "Fifth")

Renditja:

$ArrayExample | Sort

$ArrayExample | Sort -Descending

Porosja e vlerave në këtë renditje mbetet e pandryshuar. Nëse dëshirojmë që të dhënat në array të jenë të renditura, duhet të bëjmë caktimin e vlerave të renditura:

$ArrayExample = $ArrayExample | Sort

Në fakt, nuk ka eliminuar ndonjë element nga array në PowerShell, por mund ta bëjmë në këtë mënyrë:

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

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

Eleminimi i array:

$ArrayExample = $null

Ciklet

Sintaksën e cikleve:

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

Dalja nga cikli break.

Kalo elementi continue.

Kushtet Conditional

if () {} elseif () {} else

switch($someIntValue){
  1 { “Opsioni 1” }
  2 { “Opsioni 2” }
  default { “Nuk Ă«shtĂ« vendosur” }
}

Funksioni

Definimi i funksionit:

function Example () {
  echo &args
}

Ekzekutimi i funksionit:

Example “Argumenti i parĂ«â€ “Argumenti i dytĂ«â€

Definimi i argumenteve në funksion:

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

function Example ($first, $second) {}

Ekzekutimi i funksionit:

Example -first “Argumenti i parĂ«â€ -second “Argumenti i dytĂ«â€

Përjashtimi

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

Burimi: habr.com

Bli njĂ« hosting tĂ« besueshĂ«m pĂ«r faqet me mbrojtje DDoS, VPS VDS serverĂ« đŸ”„ Bli njĂ« hosting tĂ« besueshĂ«m pĂ«r faqet me mbrojtje DDoS, VPS VDS serverĂ« | ProHoster