PowerShell për fillestarët

Kur punojmë me PowerShell, gjëja e parë që hasim janë komandat (Cmdlets).
Thirrja e komandës duket si kjo:

Verb-Noun -Parameter1 ValueType1 -Parameter2 ValueType2[]

Ndihmë

Ndihma në PowerShell arrihet duke përdorur komandën Get-Help. Një nga parametrat mund të specifikohet: shembull, i detajuar, i plotë, 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ë shfaqë të gjitha komandat dhe funksionet e disponueshme duke filluar me Get-S*

Ekziston gjithashtu dokumentacion i detajuar në faqen zyrtare të Microsoft-it.

Këtu është një shembull ndihmë për komandën Get-Evenlog

PowerShell për fillestarët

Nëse parametrat janë të mbyllur në kllapa katrore [], atëherë ato janë opsionale.
Kjo do të thotë, në këtë shembull, kërkohet emri i vetë regjistrit dhe emri i parametrit Nr. Nëse lloji i parametrit dhe emri i tij janë të mbyllura në kllapa së bashku, atëherë ky parametër është opsional.

Nëse shikoni parametrin EntryType, mund të shihni vlerat që janë të mbyllura në kllapa kaçurrelë. Për këtë parametër, ne mund të përdorim vetëm vlera të paracaktuara në mbajtëset kaçurrelë.

Informacioni nëse kërkohet parametri mund të shihet në përshkrimin më poshtë në fushën e kërkuar. Në shembullin e mësipërm, atributi Pas është opsional sepse Required është vendosur në false. Më pas, shohim fushën Pozicioni përballë e cila thotë Emëruar. Kjo do të thotë që parametrit mund t'i referoheni vetëm me emër, domethënë:

Get-EventLog -LogName Application -After 2020.04.26

Meqenëse parametri LogName kishte numrin 0 në vend të Named, kjo do të thotë se mund t'i referohemi parametrit pa emër, por duke e specifikuar atë në sekuencën e dëshiruar:

Get-EventLog Application -After 2020.04.26

Le të supozojmë këtë renditje:

Get-EventLog -Newest 5 Application

Pseudonim

Që të mund të përdorim komandat e zakonshme nga tastiera në PowerShell, ekzistojnë pseudonime (Alias).

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

Kjo do të thotë, në vend që të thërrisni komandën

Set-Location “D:”

ne mund të përdorim

cd “D:”

Histori

Për të parë historikun e thirrjeve të komandave, mund të përdorni Get-History

Ekzekutimi i komandës nga historia Invoke-History 1; Thirrni Historinë 2

E qartë-Historia

Gazsjellës

Një tubacion në powershell është kur rezultati i funksionit të parë kalohet te i dyti. Këtu është një shembull duke përdorur tubacionin:

Get-Verb | Measure-Object

Por për të kuptuar më mirë tubacionin, le të marrim një shembull më të thjeshtë. Mori një ekip

Get-Verb "get"

Nëse telefononi ndihmë Get-Help Get-Verb -Full, atëherë do të shohim se parametri Verb merr hyrjen e pipline dhe ByValue është shkruar në kllapa.

PowerShell për fillestarët

Kjo do të thotë që ne mund ta rishkruajmë Get-Folje "get" në "get" | GetFolje.
Kjo do të thotë, rezultati i shprehjes së parë është një varg dhe i kalohet parametrit Verb të komandës Get-Verb përmes hyrjes së pipline sipas vlerës.
Gjithashtu, hyrja e tubacionit mund të jetë ByPropertyName. Në këtë rast, ne do të kalojmë një objekt që ka një veti me një emër të ngjashëm Folje.

Variablat

Variablat nuk janë të shtypur fort dhe janë specifikuar me një $ përpara

$example = 4

Simboli > do të thotë të vendosni të dhënat
Për shembull, $example > File.txt
Me këtë shprehje, ne do t'i vendosim të dhënat nga ndryshorja $example në një skedar
Njëlloj si Set-Content -Value $example -Path File.txt

vargjeve

Inicializimi i grupit:

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

Inicializimi i vargut bosh:

$ArrayExample = @()

Marrja e vlerës sipas indeksit:

$ArrayExample[0]

Merrni të gjithë grupin:

$ArrayExample

Shtimi i një elementi:

$ArrayExample += “Third”

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

Rendit sipas:

$ArrayExample | Sort

$ArrayExample | Sort -Descending

Por vetë grupi mbetet i pandryshuar me këtë renditje. Dhe nëse duam që grupi të ketë të dhëna të renditura, atëherë duhet të caktojmë vlerat e renditura:

$ArrayExample = $ArrayExample | Sort

Nuk ka asnjë mënyrë për të hequr një element nga një grup në PowerShell, por mund ta bëni kështu:

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

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

Heqja e një vargu:

$ArrayExample = $null

Loops

Sintaksa e lakut:

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

Dil nga laku i thyerjes.

Kapërceni elementin e vazhdimit.

Deklaratat e Kushtëzuara

if () {} elseif () {} else

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

funksion

Përkufizimi i funksionit:

function Example () {
  echo &args
}

Nisja e funksionit:

Example “First argument” “Second argument”

Përcaktimi i argumenteve në një funksion:

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

function Example ($first, $second) {}

Nisja e funksionit:

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

përjashtim

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

Burimi: www.habr.com

Shto një koment