PowerShell Muuttujat ja Taulukot
edellisessä artikkelissa, nimeltään PowerShell Scripting Opetusohjelma Aloittelijoille, me tutkia miten käyttää PowerShell-konsolin suorita skriptit ja oppinut, mitä cmdlets ovat, miten saada niiden ominaisuuksia ja miten käyttää putket siirtää tiedot yhdestä cmdlet-komentoa toiseen.
tässä artikkelissa, me siirrymme muuttujat ja taulukot, mukaan lukien, mitä ne ovat ja miten voimme luoda, poistaa ja muuttaa niitä.,i>Luettelo muuttujat
- Array List
- Array Indeksi
- Moniulotteiset Taulukot
- Sort array
- Lisää array
- Array pituus
- Poistaa kohteen sijainnista
- Array sisältää
- Selkeä array
- Tulostettava taulukko
- Silmukan läpi array
PowerShell Muuttujat
– muuttuja on yksikön muistiin, johon arvot tallennetaan., Muuttuja PowerShell alkaa ”$” (dollarin merkki) ja sen nimi voi sisältää mitä tahansa kirjaimia, numeroita ja alaviivoja. Voit määrittää arvon muuttujan, käytämme ” = ” operaattori. Jos haluat näyttää muuttujan arvon, syötä muuttuja.,
Jos lisäät numero, merkkijono, numero tulee automaattisesti merkkijono:
$var1 = "Netwrix"$var2 = 2018$var3 = $var1 + $var2$var3
Muuttuja Tyypit
PowerShell-muuttujan tyyppi on asetettu automaattisesti arvon perusteella voit määrittää, mutta voit myös määrittää tyypin manuaalisesti:
$var1 = "Netwrix"
selvittää, mitä tyyppinen muuttuja on, käytämme ”GetType ()” – parametri:
$var1 = "Netwrix"$var1.GetType().FullName
Kuten näemme, meidän $var1 muuttuja on ”Järjestelmä.,String ” – tyyppi.
seuraavassa on kuvaukset kaikista PowerShell muuttuja tyypit:
Olet luultavasti jo ymmärtänyt, että et voi kirjoittaa muuttuja ei vain joitakin konkreettisia arvo ja huomasin, että luokan Järjestelmä.Esine pöydällä. Tähän muuttujaan voit kirjoittaa lähtö tahansa cmdlet.
muuttuva soveltamisala
muuttuva soveltamisala Powershellissa voi olla joko paikallinen tai maailmanlaajuinen. Oletuksena muuttujan laajuus on paikallinen., Muuttuja rajaavat sen nykyistä soveltamisalaa; esimerkiksi paikallinen muuttuja voi olla käytettävissä nykyisen toiminnon tai käsikirjoituksen, kun taas globaali muuttuja on aktiivinen koko nykyinen PowerShell-istunto. Tarkoittamaan globaali muuttuja, käytä muotoa $Global: muuttuja = arvo, kuten on esitetty seuraava komento:
$Global:var4 = 12
PowerShell Muuttuja Esimerkkejä
Luettelo muuttujat
luettelo kaikista tällä hetkellä käytettävissä olevat muuttujat, suorita onko muuttuja:* komento., Tässä on esimerkki lähtö:
Määritä muuttuja
Voit luoda muuttujan, yksinkertaisesti määrittämällä sen arvon. Esimerkiksi komento $var4 = ”variableexample” luo muuttujan nimeltä $var4 ja antaa sille merkkijonon arvon. Kaksinkertaiset lainausmerkit ( ”” ) osoittavat, että muuttujalle on annettu merkkijonoarvo.
Hae muuttuja
Tämä on hyvin samanlainen lista muuttuja komento, vain käyttää toista cmdlet-komento:
Get-Variable | Out-String
Tulosta muuttujan
Voit tulostaa muuttujan .txt,.csv tai HTML-tiedosto.
kirjoittaa A: lle .,txt-tiedosto, käyttää Out-Tiedosto komennolla:
$var5 = "Hello World!"$var5 | Out-File C:\scripts\Hello_World.txt
tietojen vienti .,”d2d13912ee”>
Ja kirjoittaa HTML-tiedostoon, käytä ConvertTo-Html-komento:
$var6 = Get-Process$var6 | ConvertTo-Html -Property Name, Path > C:\scripts\processes.html
lue tiedosto, joka me viedään, me käyttää Päästä-Sisältö-cmdlet-komentoa:
Get-Content C:\scripts\processes.csv
Selkeä muuttuja
tyhjennä sisältö muuttuja, käytä Selkeä-Muuttuja-cmdlet-komentoa:
Clear-Variable -name var6 #without $
Poista muuttuja
poistaa kokonaan muuttuja, käytä Poista-Muuttuja-cmdlet-komentoa:
Remove-Variable -name var6 #without $
PowerShell Taulukot
array on eräänlainen muuttuja., Se on joukko komponentteja (array elementtejä) järjestetty tietyssä järjestyksessä. Matriisin osat numeroidaan peräkkäin, ja niihin pääsee käsiksi käyttämällä sen indeksinumeroa.
matriiseja luodessa on hyvä olla tietoinen Oletusvoimakäyttäytymisestä. Jos luot array useita elementtejä, PowerShell luo array, kuten aiot. Esimerkiksi laittaa muutamia numeroita osaksi array ja sitten tarkistaa tiedot tyyppi muuttuja:
$array1 = 1, 2, 3$array1.GetType()
Kuten voit nähdä, tässä tapauksessa, PowerShell luotu array (Järjestelmä.Matriisi).,
Kuitenkin, jos laitat vain yhden arvon muuttujaan, sitten PowerShell ei luoda array:
$array1 = 1$array1.GetType()
tietenkin, et voi aina kertoa etukäteen, kuinka monta objektia on saanut seurauksena suorittamalla tietty komento, joten sinun täytyy olla koodi, joka tulee aina hoitaa tulos array.
voit tehdä tämän monella tavalla. Esimerkiksi, voit käyttää”, ” operaattori. Jos pilkkua käytetään binary operaattori, sitten normaali matriisi on luotu; jos sitä käytetään unaari operaattori, array on vain yksi elementti., Esimerkiksi, tässä on, miten voimme saada array, joka koostuu yksi elementti:
$array1 = ,1$array1.GetType()
Vaihtoehtoisesti, voit erikseen määrittää tietotyypin muuttuja:
]$array1 = 1$array1.GetType()
Lopuksi, voit myös luoda array käyttäen subexpression operaattori ”@”, joka muodostaa matriisin, vaikka mitään esineitä kaikilla on määritetty. Se on erittäin kätevä alustaa muuttujan joukko, ja sitten lisätä esineitä siihen murehtimatta niiden määrä.,
$array3 = @()$array3.GetType()
Huomaa, että jokainen elementti array on oma tietotyyppi, ja tyyppi-objekti sallii sinun lisätä mitään arvoja array. Tarvittaessa voit rajoittaa ryhmän jäsenet tiettyyn tietotyyppiin – sitten luot ”kirjoitetaan array”., Esimerkiksi, voit määrittää, että array elementtejä täytyy olla kokonaisluku arvot:
]$array1 = 1$array1.GetType()
Ja niin me määrittelemme järjestelmän prosesseja, kuten array jäsenet:
]$array1 = Get-Process$array1.GetType()
Array List
Jos aiot muuttaa tai etsi array usein, voit käyttää ArrayList-luokan, joka on suunniteltu voit helposti lisätä, poistaa ja etsiä kohteita sitä:
$array3 = New-Object System.Collections.ArrayList
Array Indeksi
indeksi array on arvo, joka on yleensä numeerinen kokonaisluku, jota käytetään tunnistamaan ja viite array elementti., Array indeksit alkavat joko nolla tai yksi, riippuen ohjelmointikielen. Windows PowerShell taulukot ovat nolla-pohjainen, joten katso ensimmäinen osa array $var3 (”elementti nolla”), voit kirjoittaa $var3 .
$var3 = "first", "second", "third"
Moniulotteiset Taulukot
Moniulotteiset taulukot ovat muuttujia, joita voidaan käyttää tallentaa tietoja taulukossa, ilman kirjoittaa sen todellinen tietokanta. Se näyttää hash-taulukko, mutta se voi tallentaa erilaisia tietoja, kuten jouset ja kokonaislukuja., Itse asiassa, voit kuvitella moniulotteinen array kuin taulukko sarakkeet ja rivit, jossa jokaisella solulla on oma indeksi sisällä PowerShell ympäristössä.
PowerShell Array Esimerkkejä
Sort array
Jos joukko sisältää vain yhden tiedon tyyppi, voit lajitella arvot käyttäen Sellaista menetelmää:
$array3 | Sort
lajitella array, joissa on enemmän kuin yksi tietotyyppi, sinun täytyy käyttää Sort-Object-cmdlet-komentoa.,
Lisää array
Ensimmäinen, nyt luoda array:
$array5 = "one", "two", "three", "four", "five"$array5.gettype()
helposti muuttaa meidän array, meidän täytyy lisätä sen arraylist kokoelma:
$ArrayList1 = $array5$ArrayList1.GetType()
Kuten voit nähdä, BaseType on muuttunut, ja voimme helposti muuttaa meidän array nyt:
$ArrayList1.Add("six")$ArrayList1.Remove("three")$ArrayList1
Array pituus
palata määrä elementtejä array, käytä .,pituus parametri:
$array6 = 1,2,3,4,5,6echo $array6.Length
Poistaa kohteen array
jos Haluat poistaa kohteen, käytä .Poista komento., Jälleen, se on parempi käyttää arraylist:
$ArrayList1 = $array5$ArrayList1.GetType()$ArrayList1.Remove("three")$ArrayList1
Array sisältää
Jos haluat nähdä, jos kaikki elementtejä array sisältää tietyn arvon, käytä Sisältää-menetelmä:
$array7 = 1,2,5,8,3,4,5$array7.Contains(2)$array7.Contains(12)
Selkeä array
vaikka useimmat array toimintaa PowerShell on suhteellisen helppo toteuttaa, ei ole yksinkertaisesti tapa poistaa array., Helpoin tapa päästä eroon koko array on määrittää muuttujan $null se:
$array7 = $null$array7
Voit tarkistaa, jos joukko on tyhjä, suorita seuraava kirjoitus:
$array7 -eq $null
PowerShell, jos muuttuja on null, et voi käyttää mitään menetelmiä siihen.
Print array
koko joukon tulostamiseen voidaan käyttää samoja muuttujien tulostusmenetelmiä.
kirjoittaa A: lle .txt-tiedosto, käyttää Out-Tiedosto komennolla:
$var5 | Out-File C:\scripts\array.txt
viedä .,csv-tiedosto, käyttää Export-Csv-komennolla:
$var6 | Export-Csv -Path C:\scripts\array.csv
Ja kirjoittaa HTML-tiedostoon, käytä ConvertTo-Html-komento:
$var6 | ConvertTo-Html > C:\scripts\processes.html
Silmukan läpi array
jotta voit kahva jokainen elementti array yksi toisensa jälkeen, meidän täytyy tehdä silmukka käyttäen foreach-operaattori. Esimerkiksi, jos me julistamme, string, array ja haluat laskea pituus kunkin sanan array, meidän pitäisi ajaa seuraava komentosarja:
$array8 = @("Earth","Mercury","Venus","Jupiter","Saturn","Mars", "Neptune", "Pluto") foreach ($array in $array8) { "$array = " + $array.length }
tässä artikkelissa, me oppineet muuttujat ja niiden tyypit., Sitten tutkimme yhden muuttuvan tyypin-array-yksityiskohtaisesti ja opimme pelaamaan sen kanssa. Näillä tiedoilla olet valmis sukeltamaan Powershelliin vielä syvemmälle.