PowerShell-taulukot: niiden luominen ja käyttö
Muuttujat ovat perustietorakenne minkä tahansa tyyppisessä koodauksessa(any type of coding) . Mutta yksittäiset muuttujat tuskin riittävät useimpiin tarkoituksiin, varsinkin kun käsitellään monimutkaisempia algoritmeja.
Siellä taulukot tulevat käyttöön. Olipa kyseessä C++ tai Python , taulukoita on jokaisessa ohjelmointikielessä jossain muodossa. Mutta entä Windows PowerShell ? Miten PowerShell- taulukot toimivat? Miten käytät niitä? Mikä on niiden syntaksi? Otetaan selvää.
PowerShell-taulukot 101
Yksinkertaisesti(Simply) sanottuna taulukko on vain muuttujien jäsennelty kokoelma. Ajatuksena on poistaa kymmenien nimien kirjaamisen vaivat tiivistämällä toisiinsa liittyvät muuttujat numeroiduksi joukoksi.
PowerShellissä voit luoda muuttujan lisäämällä $-symbolin muuttujan nimeen . (PowerShell)Esimerkiksi:
$prime = 13
Muuttuja voi sisältää minkä tahansa tietotyypin numeroista merkkijonoihin. Sinun tarvitsee vain käyttää kaksois- tai yksittäislainausmerkkejä merkkijonon määrittämiseen.
$name = “Levin”
Nyt luodaksesi uuden taulukon, anna samalle muuttujalle useita arvoja pilkuilla erotettuina. Kuten tämä:
$week = “Monday”, “Tuesday”, “Wednesday”, “Thursday”, “Friday”, “Saturday”, “Sunday”
Jotkut ihmiset haluavat eksplisiittisesti heittää muuttujan taulukkoon sekaannusten välttämiseksi, vaikka se ei ole välttämätöntä. Voit tehdä tämän laittamalla arvot sulkeisiin, joiden eteen on merkitty @-symboli.
$week = @(“Monday”, “Tuesday”, “Wednesday”, “Thursday”, “Friday”, “Saturday”, “Sunday”)
Tämä on yleensä hyödyllistä, kun yrität laittaa muiden komentojen tulosteet taulukkoon, johon et voi kirjoittaa niitä manuaalisesti oikeaan muotoon.
Array:n luominen
Olemme jo nähneet yleisimmän tavan luoda taulukko. Mutta tilanteesta riippuen on muita tapoja, jotka voivat olla sopivampia. Jos esimerkiksi haluat luoda taulukon, joka sisältää lukualueen, voit käyttää alueoperaattoria:
$digits = (0..9)
Tämä luo joukon kaikista kymmenestä numerosta nollasta yhdeksään. Voit myös alustaa tyhjän taulukon, jos haluat vain paikan, johon arvot tallennetaan myöhemmin.
$values = @()
Useita(Multiple) taulukoita voidaan jopa upottaa toisiinsa, vaikka tämäntyyppinen käyttö voi hämmentää hyvin nopeasti.
$coordinates = @(
(5, 10, 23),
(11, 7, 16)
)
Oletusarvoisesti matriisi voi tallentaa minkä tahansa muuttujan tyypin, olivatpa ne numeroita, merkkijonoja tai molempien yhdistelmää. Voit kuitenkin määrittää nimenomaisesti tyypin, jos haluat rajoittaa siihen asetettuja arvoja. Esimerkiksi:
[int[]] $numbers = 2,3,4,5
Tällä tavalla matriisi voi sisältää vain kokonaislukuja. Jos sille yritetään määrittää minkä tahansa muun tyyppistä arvoa, tuloksena on virhe. Tämä voi olla hyödyllistä yksinkertaisten virheiden estämiseksi taulukoissa, jotka käyttävät yksinomaan numeerisia arvoja, koska merkkijonon syöttäminen laskelmissa käytettävään muuttujaan aiheuttaa ongelmia.
Pääsy taulukoihin
Tähän mennessä olemme nähneet useita menetelmiä erityyppisiä tietoja sisältävien taulukoiden luomiseksi. Mutta miten pääset käsiksi näihin tietoihin?
PowerShell -taulukot käyttävät samaa muotoa, jota muut ohjelmointikielet käyttävät. Jokaiseen taulukon muuttujaan pääsee käsiksi sen indeksinumerolla. Esimerkiksi:
$var = $numbers[5]
$var - muuttujan $numbers -taulukon indeksiin viisi tallennetun arvon . Huomaa, että taulukkoindeksit alkavat laskea nollasta, joten ensimmäiseen kohteeseen päästään nollalla.
Jos antaisimme tämän, esimerkiksi:
“$days[2]”
Me saamme keskiviikon, ei tiistaita.
Voit käyttää samaa menetelmää myös näiden arvojen muokkaamiseen. Esimerkiksi seuraava komento muuttaa taulukon toisen elementin nollaan:
$numbers[1] = 0
Voit myös lisätä elementtejä olemassa olevaan taulukkoon sen sijaan, että muuttaisit nykyisten merkintöjen arvoja vain lisäämällä ne aritmeettisen lausekkeen tavoin.
$names += “Johny”
Tätä menetelmää voidaan käyttää myös useiden merkintöjen tai jopa kokonaisten taulukoiden lisäämiseen kerralla.
$names += “Charlie, Liam, Teresa”
$names += $surnames
Pilkuilla erotettu menetelmä pätee myös useiden taulukon elementtien käyttämiseen. Jos syötät tämän, esimerkiksi $days viisi ensimmäistä elementtiä tallennetaan kohtaan $weekdays .
$weekdays = $days[0,1,2,3,4]
Iterointi taulukoiden kautta
Tiettyjen taulukon elementtien manuaalinen pääsy on hyvä ja hyvä, mutta jos haluat suorittaa toimintoja taulukon koko sisällölle, se voi olla tylsää. Tyylikkäämpi lähestymistapa on käyttää For-silmukkaa.
For silmukat voivat systemaattisesti käydä läpi kaikki taulukon elementit ja käsitellä jokaisen arvon ohjeiden mukaan. Näin voit rakentaa tällaisen silmukan:
For ($i = 0 ; $i -lt $days.Length ; $i++){
$days[$i]}
Ary.Length-funktio palauttaa taulukon koon, joka on pohjimmiltaan siinä olevien elementtien lukumäärä. Tämä voidaan liittää For-silmukan testilausekeparametriin, jotta kaikki elementit iteroidaan kattavasti.
Foreach -silmukka ja Foreach -objektisilmukka voivat tehdä saman vieläkin ohuemmalla PowerShell (Foreach)-(PowerShell) skriptillä.
Foreach ($day in $days){
$day}
Tämä säästää vaivaa taulukon koon määrittämisessä ja jättää tiedot PowerShellin(PowerShell) hoidettavaksi.
Milloin sinun tulisi käyttää PowerShell-taulukoita(PowerShell Arrays)
Suurin virhelähde monimutkaisessa skriptissä on virheellisesti viitatut muuttujat. Tämä johtuu suuresta määrästä yksilöllisesti nimettyjä muuttujia, mikä vaikeuttaa niiden tarkoituksen muistamista.
Yksinkertaisin ratkaisu tähän ongelmaan on käyttää taulukoita laajasti. Kaikki jollain tavalla liittyvät muuttujat voidaan liittää yhteen taulukkoon ja päästä käsiksi niiden indeksinumeroiden kautta.
Microsoft PowerShellin(Microsoft PowerShell’s) tärkein käyttötapa on automaatio, ja taulukoilla on siinä keskeinen rooli. PowerShell -cmdlet-komentojen palauttamat objektit voidaan tallentaa taulukoihin ja iteroida. Tämä mahdollistaa peräkkäisten tehtävien suorittamisen automaattisesti, mikä yksinkertaistaa huomattavasti järjestelmän hallintaa.
Related posts
Windows 11:n palautus-USB-aseman luominen ja käyttäminen
Kuinka poistaa tai luoda ajoitettu tehtävä PowerShellillä Windows 11:ssä
MIKSI tietokoneeni ei ole yhteensopiva Windows 11:n kanssa? Käytä WhyNotWin11:tä!
Kuinka lisätä Luo palautuspisteen kontekstivalikko Windows 11:ssä
PowerShell vs. komentokehote: plussat ja miinukset
Windows Insider Channelia ei voi vaihtaa Windows 11 - Dev tai Beta -käyttöjärjestelmässä
Bashin asentaminen ja käyttäminen Windows 11:ssä
Kuinka luetella kaikki Windows-palvelut PowerShellin tai komentorivin avulla
Kuinka nopeuttaa Windows 11:tä ja saada se toimimaan nopeammin Käynnistä, Suorita, Sammuta
Tämä tietokone ei voi käyttää Windows 11:tä - Korjaa se!
Kansioiden lisääminen tai poistaminen Windows 10/11 Käynnistä-valikosta
Sisäpiirikanavan vaihtaminen Windows 11:ssä
Kontekstivalikon editorit: Lisää ja poista kontekstivalikon kohteita Windows 11:ssä
Videon tekeminen valokuvista Windows 11:ssä
Verkkokameran kirkkauden säätäminen Windows 11:ssä
Windows 11:n julkaisupäivä, hinta, laitteistovaatimukset
Dynaamisen virkistystaajuuden (DRR) ottaminen käyttöön tai poistaminen käytöstä Windows 11:ssä
Minkä tahansa sovelluksen kiinnittäminen tehtäväpalkkiin Windows 11:ssä
Mihin Windows 11 -versioon aiot päivittää?
Tehtäväpalkin siirtäminen alkuun Windows 11:ssä Reigstry Editorin avulla