PowerShell Not Equal Operator: applikationer, eksempler
PowerShell Not Equal-operator sammenligner to værdier. Det vender tilbage Rigtigt hvis de to værdier ikke er ens.
Derudover, hvis de sammenlignede værdier er ens, returnerer PowerShell Not Equal (NE) operatoren Falsk .
I denne guide lærer du alt, hvad du behøver at vide om Not Equal (NE) sammenligningsoperatør . Desuden har guiden en masse rigtige SysAdmin-eksempler.
Lad os starte med syntaksen for Not Equal (NE)...
Gennemse indlægsemner
- Syntaks for PowerShell Ikke Equal Operator
- Sådan bruges PowerShell Not Equal Operator til at teste nul- eller tommeværdier
- Sådan bruges PowerShell Not Equal Operator til at teste $True eller $False
- PowerShell Not Equal Operator eksempler
- Referencer og videre læsning
Syntaks for PowerShell Ikke Equal Operator
Syntaksen for Not Equal (NE) operator er..
|_+_|Hvis du vil sammenligne flere værdier, skal du bruge og eller eller operatør. Syntaksen til at sammenligne flere værdier er...
|_+_| |_+_|
Den første syntaks for PowerShell Not Equal-operatøren genindstilles Rigtigt hvis punkt 1 er IKKE lig med punkt 2 . Desuden vil kommandoen vende tilbage i den anden syntaks Rigtigt hvis enten af Ikke Lige sammenligninger på begge sider af Eller operatør er Rigtigt .
I modsætning til den anden syntaks med eller operator, vil den tredje syntaks – med operatoren og – kun vende tilbage Rigtigt hvis Ikke Lige sammenligninger på begge sider af og operatør er Rigtigt .
Endelig er ne-operatoren ikke forskel på store og små bogstaver (den er ufølsom). Men hvis du vil gøre det skelet mellem store og små bogstaver, skal du bruge nedenstående syntaks:
|_+_|Forskellen mellem denne sidste kommando og den første er, at c tilføjes efter -.
Sådan bruges PowerShell Not Equal Operator til at teste nul- eller tommeværdier
I PowerShell-scripting er der så mange grunde til, at du måske vil teste for null eller tomme værdier. Du kan bruge ne til at teste, om en værdi er nul.
For at teste for null-værdien skal du bruge den automatiske variabel $null. Desuden kan du også bruge PowerShell Not Equal-operatortesten for en tom værdi i PowerShell med (2 dobbelte anførselstegn uden noget i anførselstegnene).
Lad os starte med nogle enkle eksempler...
Åbn en PowerShell-prompt og kør kommandoen nedenfor:
|_+_|Kommandoen returnerer alle processer, der kører på din lokale computer. Jeg har fremhævet CPU(er) kolonne.
For nogle processer er CPU(er) kolonnen er tom (nul, tom).
For kun at vise resultater, hvor CPU(er) kolonne er IKKE null eller tom, kør kommandoen nedenfor:
|_+_|Hvis du nu ser på CPU(er) kolonne, er alle resultater med null-værdi blevet elimineret!
Du kan også anvende samme princip for at returnere alle tjenester på din computer med status kørende. Her er PowerShell-kommandoen:
|_+_|Her er resultatet af kommandoen i PowerShell:
For at få resultatet til at se bedre ud, kan vi pipe outputtet ind Format-tabel – omarranger derefter overskrifterne. Her er den ændrede kommando:
|_+_|Og her er resultatet i PowerShell...
Sådan bruges PowerShell Not Equal Operator til at teste $True eller $False
Det er måske ikke indlysende, men hver gang du bruger PowerShell Not Equal-operatoren i en kommando, returnerer den en $True eller $False. Værdien $True eller $False bruges derefter til at udføre yderligere kommandoer.
$True, $False er automatiske variable, der betyder henholdsvis True og False.Som et eksempel, i Hent-proces eksempel i sidste afsnit, den $_.CPU -ne $null erklæring indenfor Hvor-objekt simpelthen returnerede alle processer, der returnerede Rigtigt for redegørelsen, $_.CPU -ne $null .
|_+_|Desuden alle processer, der vendte tilbage Falsk for, $_.CPU -ne $null erklæringen blev ikke returneret.
For at køre min pointe hjem skal du køre kommandoen nedenfor i PowerShell:
|_+_|Naturligvis er 1 IKKE lig med 2, så vi forventer, at resultatet returnerer Sand. Og her er resultatet i PowerShell...
Hvad med…
|_+_|Det vendte tilbage Falsk fordi det udsagn IKKE er sandt.
PowerShell Not Equal Operator eksempler
I dette afsnit vil jeg diskutere to praktiske eksempler på PowerShell Not Equal-operatøren. I det første eksempel vil jeg vise dig, hvordan du bruger ne-operatoren til at teste flere værdier eller betingelser.
Til sidst vil du i det andet afsnit lære, hvordan du bruger PowerShell Not Equal-operatoren i en IF-sætning.
PowerShell Not Equal Operator Flere værdier Eksempel
For at illustrere, hvordan man bruger PowerShell ne-operatoren til at teste flere værdier, lad os vende tilbage til Få-service kommandoeksempel i forrige afsnit.
|_+_|I denne kommando brugte vi PowerShell Not Equal-operatoren til at teste for en enkelt tilstand. Kommandoen returnerede kun tjenester, der IKKE har deres status som Stoppet.
Tilstanden testes inden for Hvor-objekt del af kommandoen. Her er resultatet af kommandoen:
Som forventet returnerede kommandoen ALLE tjenester med deres status som Kører.
Hvad hvis jeg vil fjerne nogle tjenester, selvom deres status kører?
Jeg kan opnå dette ved at tilføje flere værdier (eller betingelser) i Hvor-objekt del af kommandoen. Lad os f.eks. sige, at jeg ikke ønsker at returnere følgende tjenester – AJRouter , ALG , og AppMgmt .
For at fjerne disse tjenester fra resultatet, vil jeg ændre den forrige kommando som vist nedenfor:
|_+_|Resultatet af den ændrede kommando inkluderer ikke disse 3 tjenester!
Alternativt kan du ændre resultatet af den sidste kommando ved at bruge eller i stedet for og.
For at returnere alle servere, der ikke er navngivet AppIDSvc ELLER alle tjenester med status IKKE er lig med at køre, skal du køre kommandoen nedenfor:
|_+_|Desværre er resultatet ikke særlig brugbart. Grunden til, at det ikke er særlig nyttigt, er denne: selvom jeg ønskede at eliminere tjenester med status IKKE er lig med stoppet, fordi jeg har en anden betingelse forbundet med eller - resultatet inkluderede begge tjenester med status Kørende og Stoppet.
I hvert fald ville jeg bare illustrere, hvordan man tester for flere forhold med PowerShell Not Equal-operatoren!
Sådan bruges PowerShell IKKE lig med If-erklæring
I dette eksempel vil jeg bygge et script, der opretter mapper ved hjælp af navnene i tekstfilen nedenfor.
Her er scriptet, der opretter mapper ved hjælp af navne vist i tekstfilen vist ovenfor:
|_+_|Før jeg kører scriptet, her er mappen gemt i Mappesti variabel (linje 1 i koden). Mappen er tom.
Hvis du ønsker at prøve scriptet, skal du ændre følgende variabler til en eksisterende sti på din computer:
$FolderPath : Mappestien, hvor du vil oprette de nye mapper
$ TextFilePath : Den fulde sti til tekstfilen med navnene på de mapper, du vil oprette.
Til sidst, for at udføre scriptet, kopier det til PowerShell ISE og kør det.
Når jeg kørte scriptet, blev mapperne oprettet i den mappe, der er angivet i Mappesti variabel.
Nedenfor har jeg forklaret, hvad hver linje i scriptet gør. Vær opmærksom på PowerShell Not Equal-operatørstien – $ checkPath -ikke $ sand del – linje 6.
|_+_|Her er en forklaring af hver linje i scriptet:
hvordan man anmoder om mobilwebsted på krom
Resultatet af Test-sti kommandoen er $True eller $False.|_+_|
Derudover for at stoppe Ny vare kommando fra at vise resultater, skal du overføre den til Out-Null kommando.
Luk endelig HVIS erklæringsblok med en lukket parentes }.|_+_| Hvis du kører Ny vare kommando uden at overføre den til Out-Null kommando, viser den detaljerne for den oprettede mappe.
Det er det! Vores opdaterede PowerShell Not Equal (ne) operatørvejledning.
Jeg håber, du fandt denne vejledning nyttig. Hvis du fandt det nyttigt, så stem venligst Ja til spørgsmålet Var dette indlæg nyttigt nedenfor.
Alternativt kan du stille et spørgsmål, efterlade en kommentar eller give mere feedback med formularen Efterlad et svar, som findes i slutningen af denne side.
Endelig, for flere PowerShell tech S Zones, besøg vores Windows PowerShell How-To guide-side. Du kan også finde vores Work from Home-side meget nyttig.
Denne artikel blev fuldstændig omskrevet og opdateret med nye eksempler.


