PowerShell för nybörjare

NÀr vi arbetar med PowerShell Àr det första vi möter kommandon (Cmdlets).
Anropet av kommandot ser ut sÄ hÀr:

Verb-Noun -Parameter1 ValueType1 -Parameter2 ValueType2[]

HjÀlp

Anrop av hjÀlp i PowerShell görs med kommandot Get-Help. Du kan ange en av parametrarna: example, detailed, full, online, showWindow.

Get-Help Get-Service -full returnerar en fullstÀndig beskrivning av hur kommandot Get-Service fungerar.
Get-Help Get-S* visar alla tillgÀngliga kommandon och funktioner som börjar med Get-S*.

Det finns ocksÄ detaljerad dokumentation pÄ den officiella Microsoft-webbplatsen.

HÀr Àr ett exempel pÄ hjÀlp för kommandot Get-Eventlog.

PowerShell för nybörjare

Om parametrarna Àr inom hakparenteser [], sÄ Àr de valfria.
Det vill sÀga, i det hÀr exemplet Àr namnet pÄ loggen obligatoriskt, medan namnet pÄ parametern inte Àr det. Om typ och namn pÄ parametern Àr inom parenteser tillsammans, sÄ Àr den parametern valfri.

Om vi ser pÄ parametern EntryType, ser vi vÀrdena som Àr inom klamrar. För denna parameter kan vi endast anvÀnda fördefinierade vÀrden i klamrar.

Information om huruvida en parameter Àr obligatorisk kan vi se i beskrivningen nedan i fÀltet Required. I exemplet ovan Àr attributet After valfritt, eftersom det stÄr false vid Required. DÀrför ser vi fÀltet Position dÀr det stÄr Named. Detta innebÀr att vi bara kan hÀnvisa till parametern med namn, det vill sÀga:

Get-EventLog -LogName Application -After 2020.04.26

Eftersom parametern LogName istÀllet för Named hade siffran 0 sÄ betyder det att vi kan hÀnvisa till parametern utan namn, och ange den i rÀtt följd:

Get-EventLog Application -After 2020.04.26

Antag att vi har en sÄdan ordning:

Get-EventLog -Newest 5 Application

Alias

För att vi ska kunna anvÀnda vanliga kommandon frÄn konsolen i PowerShell finns det alias (Alias).

Ett exempel pÄ ett alias för kommandot Set-Location Àr cd.

Det vill sÀga, istÀllet för att anropa kommandot

Set-Location "D:"

kan vi anvÀnda

cd "D:"

History

För att se historiken över kommandon kan du anvÀnda Get-History.

Kör ett kommando frÄn historiken Invoke-History 1; Invoke-History 2.

Rensa historiken Clear-History.

Pipeline

Pipelinen i PowerShell Àr nÀr resultatet av den första funktionen skickas vidare till den andra. HÀr Àr ett exempel pÄ anvÀndning av pipelinen:

Get-Verb | Measure-Object.

Men för att bÀttre förstÄ pipelinen, lÄt oss ta ett enklare exempel. Det finns ett kommando

Get-Verb "get".

Om vi anropar hjÀlp Get-Help Get-Verb -Full, sÄ ser vi att parametern Verb tar pipline input och i parenteserna stÄr det ByValue.

PowerShell för nybörjare

Det betyder att vi kan skriva om Get-Verb «get» till «get» | Get-Verb.
Det vill sÀga att resultatet av det första uttrycket Àr en strÀng och den överförs till parameter Verb av kommandot Get-Verb genom pipelining med vÀrde.
Pipelining kan ocksÄ vara ByPropertyName. I sÄ fall kommer vi att överföra ett objekt som har en egenskap med ett liknande namn som Verb.

Variabler

Variabler Àr inte strikt typade och definieras med symbolen $ framför.

$example = 4

Symbolen > innebÀr att lÀgga data i
Till exempel, $example > File.txt
Med detta uttryck kommer vi att placera data frÄn variabeln $example i en fil.
Detta Àr analogt med kommandot Set-Content -Value $example -Path File.txt.

Arrayer

Initiering av en array:

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

Initiering av en tom array:

$ArrayExample = @()

HÀmta vÀrde efter index:

$ArrayExample[0]

HĂ€mta hela arrayen:

$ArrayExample

LĂ€gga till ett element:

$ArrayExample += “Third”

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

Sortering:

$ArrayExample | Sort

$ArrayExample | Sort -Descending

Men sjÀlva arrayen förblir oförÀndrad vid sÄdan sortering. Om vi vill att arrayen ska ha sorterade data, mÄste vi göra en tilldelning av de sorterade vÀrdena:

$ArrayExample = $ArrayExample | Sort

I praktiken finns det ingen mekanism för att ta bort ett element frÄn arrayen i PowerShell, men det kan göras pÄ följande sÀtt:

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

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

Ta bort arrayen:

$ArrayExample = $null

Loopar

Syntax för loopar:

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

Avsluta loopen break.

Skippa elementet continue.

Villkorssatser

if () {} elseif () {} else

switch($someIntValue){
  1 { “Alternativ 1” }
  2 { “Alternativ 2” }
  default { “Inte angiven” }
}

Funktion

Definiera en funktion:

function Example () {
  echo &args
}

Kör funktionen:

Example “Första argumentet” “Andra argumentet”

Definiera argumenten i funktionen:

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

function Example ($first, $second) {}

Kör funktionen:

Example -first “Första argumentet” -second “Andra argumentet”

Undantag

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

KĂ€lla: habr.com

Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar đŸ”„ Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar | ProHoster