PowerShell Arrays: Sådan opretter og bruger du dem
Variabler er den mest basale datastruktur i enhver form for kodning(any type of coding) . Men enkelte variabler er næppe tilstrækkelige til de fleste formål, især når det drejer sig om mere komplekse algoritmer.
Det er her arrays kommer ind i billedet. Det være sig C++ eller Python , arrays er til stede i alle programmeringssprog i en eller anden form. Men hvad med Windows PowerShell ? Hvordan fungerer PowerShell -arrays? Hvordan bruger du dem? Hvad er deres syntaks? Lad os finde ud af det.
PowerShell Arrays 101
Simpelthen(Simply) er et array blot en struktureret samling af variable. Ideen er at eliminere besværet med at holde styr på snesevis af navne ved at sammenklappe relaterede variabler i et nummereret sæt.
I PowerShell kan du oprette en variabel ved at sætte $-symbolet foran et variabelnavn. For eksempel:
$prime = 13
Variablen kan indeholde enhver datatype, fra tal til strenge. Du skal blot bruge dobbelte eller enkelte anførselstegn for at angive en streng.
$name = “Levin”
For nu at oprette et nyt array skal du blot tildele flere værdier til den samme variabel, adskilt af kommaer. Sådan her:
$week = “Monday”, “Tuesday”, “Wednesday”, “Thursday”, “Friday”, “Saturday”, “Sunday”
Nogle mennesker foretrækker eksplicit at kaste en variabel ind i et array for at undgå forvirring, selvom det ikke er nødvendigt. For at gøre dette skal du sætte værdierne i parentes foran med @-symbolet.
$week = @(“Monday”, “Tuesday”, “Wednesday”, “Thursday”, “Friday”, “Saturday”, “Sunday”)
Dette er normalt praktisk, når du forsøger at sætte output fra andre kommandoer ind i et array, hvor du ikke manuelt kan skrive dem i det korrekte format.
Oprettelse af et array
Vi har allerede set den mest almindelige metode til at skabe et array. Men afhængigt af situationen er der andre måder, der kan være mere egnede. Hvis du f.eks. vil oprette et array, der indeholder en række tal, kan du bruge intervaloperatoren:
$digits = (0..9)
Dette vil skabe en matrix af alle de ti cifre fra nul til ni. Du kan også initialisere et tomt array, hvis du bare vil have et sted at gemme værdier senere.
$values = @()
Flere(Multiple) arrays kan endda indlejres i hinanden, selvom denne type brug kan blive forvirrende meget hurtigt.
$coordinates = @(
(5, 10, 23),
(11, 7, 16)
)
Som standard kan et array gemme enhver variabeltype, det være sig tal, strenge eller en blanding af begge. Men du kan udtrykkeligt definere en type, hvis du vil begrænse værdierne i den. For eksempel:
[int[]] $numbers = 2,3,4,5
På denne måde kan arrayet kun indeholde heltal. Forsøg på at tildele en anden type værdi til den vil returnere en fejl. Dette kan være nyttigt for at forhindre simple fejl for arrays, der udelukkende arbejder med numeriske værdier, da indtastning af en streng i en variabel, der skal bruges i beregninger, vil skabe problemer.
Adgang til arrays
Indtil videre har vi set flere metoder til at skabe arrays, der indeholder forskellige typer data. Men hvordan går du frem for at få adgang til disse data?
PowerShell -arrays bruger det samme format, der bruges af andre programmeringssprog. Hver matrixvariabel kan tilgås ved dens indeksnummer. For eksempel:
$var = $numbers[5]
Dette vil kopiere værdien gemt i indekset fem af $numbers -arrayet i $var - variablen. Bemærk, at array-indekser begynder at tælle fra 0, så det første element tilgås med nul.
Hvis vi skulle udskrive dette, for eksempel:
“$days[2]”
Vi får onsdag, ikke tirsdag.
Du kan også bruge den samme metode til at ændre disse værdier. For eksempel vil følgende kommando ændre det andet element i arrayet til nul:
$numbers[1] = 0
Du kan også tilføje flere elementer til en eksisterende matrix i stedet for at ændre værdierne af aktuelle poster blot ved at tilføje dem som et aritmetisk udtryk.
$names += “Johny”
Denne metode kan også bruges til at tilføje flere poster på én gang, eller endda hele arrays.
$names += “Charlie, Liam, Teresa”
$names += $surnames
Den kommaseparerede metode gælder også for adgang til flere array-elementer. Indtastning af dette gemmer f.eks. de første fem elementer af $days i $weekdays .
$weekdays = $days[0,1,2,3,4]
Iteration gennem arrays
Manuel adgang til bestemte elementer i et array er godt og godt, men hvis du vil udføre handlinger på hele indholdet af et array, kan det blive kedeligt. En mere elegant tilgang er at bruge en For-løkke.
For sløjfer kan systematisk gennemgå alle elementerne i et array og behandle hver værdi i henhold til instruktionerne. Sådan kan du konstruere en sådan sløjfe:
For ($i = 0 ; $i -lt $days.Length ; $i++){
$days[$i]}
Funktionen array.Length returnerer størrelsen af arrayet, som grundlæggende er antallet af elementer i det. Dette kan tilsluttes en For-løkkes testudtryksparameter for omfattende iteration over alle elementerne.
Foreach - løkken og Foreach - objektløkken(Foreach) kan gøre det samme med et endnu slankere PowerShell -script.
Foreach ($day in $days){
$day}
Dette sparer dig for besværet med at bestemme arrayets størrelse, hvilket efterlader detaljerne til PowerShell at håndtere.
Hvornår skal du bruge PowerShell-arrays
Den største kilde til fejl i et komplekst script er variabler, der henvises til forkert. Dette sker på grund af tilstedeværelsen af et stort antal unikt navngivne variabler, hvilket gør det svært at huske deres formål.
Den enkleste løsning på dette problem er at bruge arrays i vid udstrækning. Alle variabler relateret på en eller anden måde kan tildeles til et enkelt array og tilgås via deres indeksnumre.
Microsoft PowerShells primære use case er automatisering, og arrays spiller en central rolle i det. De objekter, der returneres af PowerShell -cmdlets, kan gemmes i arrays og gentages. Dette gør det muligt at udføre sekventielle opgaver automatisk, hvilket i høj grad forenkler systemadministrationen.
Related posts
Sådan opretter og bruger du et Windows 11-gendannelses-USB-drev
Sådan sletter eller opretter du en planlagt opgave med PowerShell i Windows 11
HVORFOR er min pc ikke kompatibel med Windows 11? Brug WhyNotWin11!
Sådan tilføjes Opret gendannelsespunkt-kontekstmenu i Windows 11
PowerShell vs Kommandoprompt: Fordele og ulemper
Kan ikke skifte Windows Insider Channel på Windows 11 - Dev eller Beta
Sådan aktiverer eller deaktiverer du tekstforslag i Windows 11
Sådan åbner du Windows-værktøjer i Windows 11
Sådan får du Windows 11 Insider Preview Build nu
Vis eller skjul ikoner i proceslinjens hjørneoverløbsområde på Windows 11
Sådan aktiverer eller deaktiverer du Dynamic Refresh Rate (DRR) i Windows 11
Stop med at minimere vinduer, når en skærm er afbrudt på Windows 11
Sådan nedgraderes fra Windows 11 til Windows 10
Sådan tilføjer eller fjerner du mapper fra Windows 10/11 Startmenu
Windows 11 udgivelsesdato, pris, hardwarekrav
Hvilken udgave af Windows 11 vil du blive opgraderet til?
Aktiver eller deaktiver Wi-Fi og Ethernet-adapter på Windows 11
Sådan installeres Windows 11 ved hjælp af Hyper-V i Windows
Context Menu Editors: Tilføj, fjern Context Menu-elementer i Windows 11
Sådan fastgør du en app til proceslinjen i Windows 11