Er du sliter med å forstå PowerShell sammenligningen operatører som eq, ne, ceq og cne. Hvis så, les videre.

som Kommer fra en programvare utviklingen bakgrunnen første omgang hadde jeg en «Huh?»øyeblikk var da jeg først så PowerShell er sammenligningen operatører eq, ceq, cne, osv., Alle andre språk har sammenligningen operatører, men ikke helt som PowerShell. Jeg var vant til == og <>.

Ikke bare syntaks se helt annerledes enn din typiske programmeringsspråk de også oppfører seg annerledes når du arbeider sammenligne samlinger av verdier.

Det er noe som virkelig hang meg opp når du lære om PowerShell, men nå ser det ut som at ol’ øl ordtaket; det er en ervervet smak.,

La oss gå over kort hva en sammenligning operatøren hvis du ikke er kjent og dykke dypere inn i de nyansene som PowerShell introduserer. Før lang tid, vil du være i stand til å bruke operatører i PowerShell-skript uten problem.

Som jeg har nevnt, er alle programmering/scripting språk har sammenligningen operatører. I sin mest grunnleggende forstand, sammenligningen operatører er nødvendig å vurdere hvordan forskjellige ting i forhold til andre ting. De brukes til å ta to objekter og se hva forskjellen (hvis noen) mellom de to objektene.,

I PowerShell er tilfelle, operatører kan også brukes til å finne elementer inni samlinger av verdier.

For dette innlegget, jeg kommer til å gå over likestillings-operatører og hvordan PowerShell bruker dem. Disse er eq og ne med sine case-sensitive kolleger ceq og cne. For en full liste, kan du hoppe over Technet-området eller bare bruke Get-Help about_comparison_operatorsi Powershell-konsollen.,

PowerShell -EQ og -CEQ

Hvis du trenger å se om en gjenstand er lik en annen gjenstand, må du bruke eq (små bokstaver) eller ceq (case sensitiv) operatører. Disse operatorene teste verdien av hver enhet du ønsker å sammenligne mot.

Når jeg først begynte å lære PowerShell-jeg vil hele tiden gjøre noe som dette

$string = 'Adam'if ($string = 'Adam') { 'string is equal to Adam'}

Du vil snart bli slo nok til å ikke gjøre det. = – tegnet er et oppdrag operatøren IKKE en sammenligning operatør., Du kan ikke bruke = logg for å sammenligne én verdi mot en annen.

Den riktige måten å gjøre dette på er å definere verdien til sjekk på venstre side av uttrykk og bruk eq operatør. Her er et eksempel på eq og ceq operatører og hvordan de er brukt.,

PowerShell’s eq vs ceq

Notice how eq returned a boolean True value when comparing our variable against adam but ceq returned a boolean False value? This displays the case sensitivity difference between the two operators.,

Dette er vel og bra for skalar (single) – verdier, men du kan også finne alle forekomster av bestemte verdier ved hjelp av disse operatører. Du kan For eksempel bruke PowerShell -eq operatøren å filtrere elementer i en tabell:

ved Hjelp av Eq for å søke matriser

Hvis du har en variabel med en samling av verdier som en tabell du kan bruke eq og ceq for å finne alle forekomster av verdier inne i samlingen.,

legg Merke til at det finnes alle forekomster av heltall 9 vi forsøkte å sammenligne mot. Jeg bruker denne praktiske metoden hele tiden.

-NE og -CNE

På motsatt side, du har både ne og cne. De er akkurat det motsatte av eq og ceq men vise nøyaktig samme atferd bare motsatt. De ikke tester likestilling, de tester ulikhet.

PowerShells ne vs., cne

jeg håper dette gir en god forklaring på likestilling sammenligningen operatører. Dette virkelig fikk meg hengt opp som en nybegynner, og det egentlig aldri klikket for meg før jeg var bare slå til innsending av feilmeldinger. Jeg håper dette innlegget hindrer det samme slo ned fikk jeg.

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *