PowerShell para sa mga nagsisimula

Kapag nagtatrabaho sa PowerShell, ang unang bagay na nakakaharap namin ay mga utos (Cmdlets).
Ang command call ay ganito ang hitsura:

Verb-Noun -Parameter1 ValueType1 -Parameter2 ValueType2[]

Tulong

Ang tulong ay ina-access sa PowerShell gamit ang Get-Help command. Maaari mong tukuyin ang isa sa mga parameter: halimbawa, detalyado, buo, online, showWindow.

Get-Help Get-Service -full ay magbabalik ng buong paglalarawan kung paano gumagana ang Get-Service command
Ipapakita ng Get-Help Get-S* ang lahat ng available na command at function simula sa Get-S*

Mayroon ding detalyadong dokumentasyon sa opisyal na website ng Microsoft.

Narito ang isang halimbawa ng tulong para sa Get-Evenlog command

PowerShell para sa mga nagsisimula

Kung ang mga parameter ay nakapaloob sa mga square bracket [], ang mga ito ay opsyonal.
Iyon ay, sa halimbawang ito, ang pangalan ng journal mismo ay sapilitan, at ang pangalan ng parameter Hindi. Kung ang uri ng parameter at ang pangalan nito ay nakapaloob sa mga panaklong nang magkasama, ang parameter ay opsyonal.

Kung titingnan mo ang EntryType parameter, makikita mo ang mga value na nakapaloob sa curly braces. Para sa parameter na ito, maaari lamang kaming gumamit ng mga paunang natukoy na halaga sa mga kulot na braces.

Makakakita kami ng impormasyon tungkol sa kung kinakailangan ang parameter sa paglalarawan sa ibaba sa Kinakailangang field. Sa halimbawa sa itaas, ang katangiang After ay opsyonal dahil ang Kinakailangan ay nakatakda sa false. Susunod na makikita natin ang Position field sa tapat na nagsasabing Named. Nangangahulugan ito na ang parameter ay maaari lamang ma-access sa pamamagitan ng pangalan, iyon ay:

Get-EventLog -LogName Application -After 2020.04.26

Dahil ang parameter ng LogName ay may numerong 0 na tinukoy sa halip na Named, nangangahulugan ito na maa-access natin ang parameter nang walang pangalan, ngunit sa pamamagitan ng pagtukoy nito sa kinakailangang pagkakasunud-sunod:

Get-EventLog Application -After 2020.04.26

Ipagpalagay natin ang order na ito:

Get-EventLog -Newest 5 Application

Bansag

Upang magamit natin ang mga pamilyar na utos mula sa console, ang PowerShell ay may mga alias (Alias).

Ang isang halimbawang alias para sa Set-Location command ay cd.

Iyon ay, sa halip na tawagan ang utos

Set-Location “D:”

pwede natin gamitin

cd “D:”

kasaysayan

Para tingnan ang history ng mga command call, maaari mong gamitin ang Get-History

Isagawa ang utos mula sa history Invoke-History 1; Invoke-History 2

I-clear ang history Clear-History

Padaanin sa tubo

Ang isang pipeline sa powershell ay kapag ang resulta ng unang function ay ipinasa sa pangalawa. Narito ang isang halimbawa ng paggamit ng pipeline:

Get-Verb | Measure-Object

Ngunit para mas maunawaan ang pipeline, kumuha tayo ng mas simpleng halimbawa. May isang team

Get-Verb "get"

Kung tatawagin natin ang Get-Help Get-Verb -Full help, makikita natin na ang Verb parameter ay tumatanggap ng pipline input at ang ByValue ay nakasulat sa panaklong.

PowerShell para sa mga nagsisimula

Nangangahulugan ito na maaari nating muling isulat ang Get-Verb na "get" to "get" | Kumuha-Pandiwa.
Ibig sabihin, ang resulta ng unang expression ay isang string at ito ay ipinapasa sa Verb parameter ng Get-Verb command sa pamamagitan ng pipline input ayon sa halaga.
Gayundin ang input ng pipeline ay maaaring ByPropertyName. Sa kasong ito, papasa tayo ng isang bagay na may katangian na may katulad na pangalang Pandiwa.

Variable

Ang mga variable ay hindi malakas na na-type at tinukoy na may simbolo na $ sa harap

$example = 4

Ang simbolong > ay nangangahulugang ilagay ang data
Halimbawa, $example > File.txt
Gamit ang expression na ito ilalagay namin ang data mula sa $example variable sa isang file
Pareho sa Set-Content -Value $example -Path File.txt

Mga Arrays

Pagsisimula ng array:

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

Pagsisimula ng isang walang laman na array:

$ArrayExample = @()

Pagkuha ng halaga sa pamamagitan ng index:

$ArrayExample[0]

Kunin ang buong array:

$ArrayExample

Pagdaragdag ng elemento:

$ArrayExample += “Third”

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

Ayusin ayon sa:

$ArrayExample | Sort

$ArrayExample | Sort -Descending

Ngunit ang array mismo ay nananatiling hindi nagbabago sa panahon ng pag-uuri na ito. At kung gusto nating magkaroon ng pinagsunod-sunod na data ang array, kailangan nating magtalaga ng mga pinagsunod-sunod na halaga:

$ArrayExample = $ArrayExample | Sort

Walang aktwal na paraan upang alisin ang isang elemento mula sa isang array sa PowerShell, ngunit magagawa mo ito sa ganitong paraan:

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

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

Pag-alis ng array:

$ArrayExample = $null

loops

Loop syntax:

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

Lumabas mula sa break loop.

Inaalis ang elementong magpatuloy.

Mga Pahayag na Kundisyon

if () {} elseif () {} else

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

tungkulin

Kahulugan ng Function:

function Example () {
  echo &args
}

Pagpapatakbo ng function:

Example “First argument” “Second argument”

Pagtukoy ng mga argumento sa isang function:

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

function Example ($first, $second) {}

Pagpapatakbo ng function:

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

Exception

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

Pinagmulan: www.habr.com

Magdagdag ng komento