PowerShell Validates Set velger fra en liste

PowerShell Validates Set velger fra en liste

Attributtet “Validateset”I PowerShell brukes til å validere de leverte verdiene eller objektene. Noe som betyr at det bare tillater verdiene som er angitt fra den medfølgende listen over varer. Den spesifiserte parameteren kan også brukes i PowerShell -funksjonene. I løpet av kjøretiden sjekker det om listen inneholder de spesifikke verdiene eller ikke. Hvis verdien er funnet på listen, vil denne cmdlet fortsette å kjøre, ellers vil den kaste en feil.

Denne artikkelen vil gi innsiktsfulle detaljer om PowerShell “Validateset” -attributtet.

PowerShell Validateset: Velge fra en liste

Attributtet “Validere”I PowerShell brukes til å sjekke og validere om den angitte verdien eller objektet eksisterer i de medfølgende objektene eller ikke. Eksempler som demonstrerer det angitte attributtet er gitt nedenfor.

Eksempel 1: Lag en funksjon for å be brukeren om å oppgi en verdi og validere den ved hjelp av “Validateset” cmdlet

Følgende eksempel vil validere verdien som er angitt av brukeren:

Funksjon OS

[Validateset ('Windows', 'iOS', 'Linux')]
$ lese = lese -vert -prompt 'Enter OS -navnet'


I henhold til koden ovenfor:

    • Først må du lage en funksjon som heter “OS”.
    • Deretter, utenfor funksjonen, lager du en "Validateset”Argument og levere de uttalte verdiene.
    • Etter det, initialiser en variabel og tilordne “lese-vert”Cmdlet.
    • Deretter legger du til “-hurtig”Parameter og spesifiser teksten som skal vises på tidspunktet for å ta innspill fra brukeren:



La oss validere den gitte verdien enten den eksisterer i samlingen eller ikke:

Vinduer



La oss nå angi objektverdien som ikke eksisterer i det medfølgende settet med objekter:

Manjaro



Det kan sees at konsollen kaster en feil.

Eksempel 2: Bruk "Param" -uttalelsen sammen med "Validateset" -attributtet for å validere den gitte verdien

Det uttalte eksemplet vil få brukeren til å oppgi verdien og deretter validere den angitte verdien:

Param (
[Parameter (obligatorisk)]
[Validateset ("Adam", "John", "Bill", "Katty")]
$ Ansatte_info
)
$ ansatte_age = [bestilt]@
'Adam' = 28
'John' = 26
'Bill' = 32

$ Ansatte_info | Foreach-object
$ age_output = "0 er 1 år gammel."-F $ _, $ Employee_age [$ _]
Skriving-output $ age_output


I den ovennevnte koden:

    • Først må du lage en "Param ()”Uttalelse og gjør det obligatorisk.
    • Deretter passere "Validateset”Attributt med settet med objekter inne i den og passerer også hasjbordet som er tildelt“$ Ansatte_info”Variabel.
    • Etter det, lag et hasjbord. I den hasjtabellen tildeler verdiene til objektene.
    • Skriv deretter hasjtabellen tildelt variabel og legg til "|”Rørledning.
    • Etter det, legg til “Foreach-objekt”Cmdlet for å vise utdataene til PowerShell -konsollen:



La oss legge inn verdien som leveres til samlingen av objekter for å validere den:

Regning



Det kan observeres at kommandoen utført med suksess fordi det angitte objektet eksisterer i de medfølgende objektene.

La oss nå legge inn objektet som ikke eksisterer i samlingen av objekter:

James



Det kan sees at konsollen kaster en feil fordi det angitte objektet ikke eksisterer i den medfølgende objektsamlingen.

Konklusjon

Cmdlet “Validateset”I PowerShell spesifiserer settet med mulige verdier for et cmdlet -parameterargument. Dessuten kan dette også brukes av PowerShell -funksjonen. Når den er aktivert, aksepterer og validerer den den gitte verdien. Hvis verdien eksisterer i samlingen, vil programmet utføre ytterligere. Ellers vil det ikke utføre og vil kaste en feil. Denne bloggen har gitt detaljert informasjon om “Validateset” -attributtet.