PowerShell ji bo destpêk

Dema ku bi PowerShell re dixebitin, yekem tiştê ku em pê re rû bi rû dibin ferman e (Cmdlets).
Banga fermanê wiha xuya dike:

Verb-Noun -Parameter1 ValueType1 -Parameter2 ValueType2[]

Alîkarî

Alîkarî di PowerShell-ê de bi karanîna fermana Get-Help tê gihîştin. Hûn dikarin yek ji pîvanan diyar bikin: mînak, berfireh, tije, serhêl, showWindow.

Get-Help Get-Service -full dê ravekek tevahî ya ka fermana Get-Service çawa dixebite vegerîne
Get-Help Get-S* dê hemî ferman û fonksiyonên berdest ên ku bi Get-S* dest pê dikin nîşan bide

Li ser malpera fermî ya Microsoft-ê jî belgeyên berfireh hene.

Li vir ji bo fermana Get-Evenlog alîkariyek mînakek heye

PowerShell ji bo destpêk

Ger parametre di kemberên çargoşe [] de werin girtin, ew vebijarkî ne.
Ango, di vê nimûneyê de, navê kovarê bixwe mecbûrî ye, û navê pîvanê ye Na. Ger cureyê parametreyê û navê wê di nav parantezê de bi hev re bên girtin, wê demê parametre vebijarkî ye.

Ger hûn li parametreya EntryType mêze bikin, hûn dikarin nirxên ku di nav pêlên kelandî de hatine girtin bibînin. Ji bo vê parameterê, em tenê dikarin nirxên pêşdebirkirî di brayên çîçek de bikar bînin.

Em dikarin agahdarî bibînin ka gelo parametre di danasîna jêrîn de di qada Pêdivî de hewce ye an na. Di mînaka li jor de, taybetmendiya Piştî vebijarkî ye ji ber ku Required wekî xelet tête danîn. Dûv re em qada Position beramberî ku dibêje Named dibînin. Ev tê vê wateyê ku parametre tenê bi navî dikare were gihîştin, ango:

Get-EventLog -LogName Application -After 2020.04.26

Ji ber ku parametreya LogName di şûna Named de jimareya 0 diyar kiribû, ev tê vê wateyê ku em dikarin bêyî navek bigihîjin parametreyê, lê bi destnîşankirina wê di rêza pêwîst de:

Get-EventLog Application -After 2020.04.26

Ka em vê fermanê bihesibînin:

Get-EventLog -Newest 5 Application

Navê dizî

Ji ber ku em dikarin fermanên naskirî yên ji konsolê bikar bînin, PowerShell bi navên (Alias) heye.

Navekî mînakek ji bo fermana Set-Location cd ye.

Yanî li şûna ku emrê bang bike

Set-Location “D:”

em dikarin bikar bînin

cd “D:”

Dîrok

Ji bo dîtina dîroka bangên fermanê, hûn dikarin Get-History bikar bînin

Fermana ji dîrokê bicîh bikin Invoke-History 1; Banga-Dîrok 2

Dîroka paqij bike Clear-History

Pipeline

Xeta boriya di powershell de dema ku encama fonksiyona yekem derbasî ya duyemîn dibe. Li vir mînakek karanîna boriyê ye:

Get-Verb | Measure-Object

Lê ji bo ku boriyê çêtir fam bikin, em mînakek hêsantir bigirin. Tîmek heye

Get-Verb "get"

Ger em gazî Alîkariya Get-Help Get-Verb -Timam bikin, em ê bibînin ku pîvana Verb têketina hêlînê qebûl dike û ByValue di nav parantezê de tê nivîsandin.

PowerShell ji bo destpêk

Ev tê wê wateyê ku em dikarin Get-Verb "get" ji nû ve binivîsin "get" | Get-Lêker.
Ango, encama îfadeya yekem rêzek e û ew bi navgîniya nirxê ve ji pîvana Lêkerê ya fermana Get-Verb re tê derbas kirin.
Di heman demê de têketina pipline dikare bibe ByPropertyName. Di vê rewşê de, em ê tişta ku xwediyê taybetmendiyek bi navek mîna lêker e derbas bikin.

guherbarên

Guherbar bi tundî nayên nivîsandin û bi nîşana $ li pêş têne diyar kirin

$example = 4

Sembola > tê wateya danîna daneyan
Bo nimûne, $example > File.txt
Bi vê gotinê em ê daneyên ji guherbara $example têxin pelê
Eynî Set-Content -Nirx $mînak -Path File.txt

Arrays

Destpêkirina array:

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

Destpêkirina rêzek vala:

$ArrayExample = @()

Danîna nirxek ji hêla index:

$ArrayExample[0]

Tevahiya rêzê bistînin:

$ArrayExample

Zêdekirina hêmanek:

$ArrayExample += “Third”

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

Sortkirin:

$ArrayExample | Sort

$ArrayExample | Sort -Descending

Lê array bixwe di dema vê veqetandinê de neguherî dimîne. Û heke em dixwazin array daneya rêzkirî hebe, wê hingê pêdivî ye ku em nirxên cûrbecûr destnîşan bikin:

$ArrayExample = $ArrayExample | Sort

Rêyek rastîn tune ku meriv hêmanek ji rêzek di PowerShell-ê de jê bibe, lê hûn dikarin bi vî rengî bikin:

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

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

Rakirina array:

$ArrayExample = $null

Loops

Hevoksaziya Loop:

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

Derkeve ji hêlîna veqetînê.

Derxistina hêmana berdewamkirinê.

Daxuyaniyên itionert

if () {} elseif () {} else

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

Karî

Pênaseya Fonksiyon:

function Example () {
  echo &args
}

Fonksiyona xebitandinê:

Example “First argument” “Second argument”

Diyarkirina argumanan di fonksiyonê de:

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

function Example ($first, $second) {}

Fonksiyona xebitandinê:

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

Îstîsna

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

Source: www.habr.com

Add a comment