PowerShell Not Equal Operator: Aplikace, příklady

24. května 2021 36291 Pohledy PowerShell se nerovná aplikace operátora, příklady

Operátor PowerShell Not Equal porovnává dvě hodnoty. Vrací se Skutečný pokud se tyto dvě hodnoty nerovnají.

Pokud jsou navíc porovnávané hodnoty stejné, vrátí operátor PowerShell Not Equal (NE). Nepravdivé .

V této příručce se dozvíte vše, co potřebujete vědět o nerovném (NE) srovnávací operátor . Kromě toho má příručka mnoho skutečných příkladů SysAdmin.

Začněme syntaxí Not Equal (NE)…

Procházet témata příspěvků

Syntaxe PowerShell Not Equal Operator

Syntaxe operátoru Not Equal (NE) je...

|_+_|

Pokud chcete porovnat více hodnot, použijte a nebo nebo operátor. Syntaxe pro porovnání více hodnot je…

|_+_| |_+_|

První syntaxe operátoru PowerShell Not Equal se přeladí Skutečný -li položka 1 NENÍ rovno položka 2 . Navíc ve druhé syntaxi se příkaz vrátí Skutečný -li buď srovnání Nerovných na obou stranách Nebo operátor je Skutečný .

Na rozdíl od druhé syntaxe s nebo Vrátí se pouze třetí syntaxe – s operátorem a Skutečný pokud je zapnuto srovnání Nerovná se oba strany a operátor jsou Skutečný .

A konečně operátor ne nerozlišuje malá a velká písmena (nerozlišuje malá a velká písmena). Pokud však chcete rozlišovat malá a velká písmena, použijte níže uvedenou syntaxi:

|_+_|

Rozdíl mezi tímto posledním příkazem a prvním je v tom, že c je přidáno za -.

Jak používat operátor PowerShell Not Equal k testování hodnot Null nebo Empty

Jak používat operátor PowerShell Not Equal k testování hodnot Null nebo Empty

Ve skriptování PowerShellu existuje tolik důvodů, proč byste mohli chtít otestovat hodnoty null nebo prázdné. Pomocí ne můžete otestovat, zda je hodnota null.

Chcete-li otestovat hodnotu null, použijte automatickou proměnnou $null. Kromě toho můžete také použít test operátoru PowerShell Not Equal pro prázdnou hodnotu v PowerShell s (2 dvojité uvozovky bez čehokoli v uvozovkách).

Začněme jednoduchými příklady…

Otevřete výzvu PowerShell a spusťte níže uvedený příkaz:

|_+_|

Příkaz vrátí všechny procesy běžící na vašem místním počítači. Zvýraznil jsem CPU sloupec.

U některých procesů je CPU sloupec je prázdný (null, prázdný).

Chcete-li zobrazit pouze výsledky, kde je CPU sloupec NENÍ null nebo prázdný, spusťte příkaz níže:

|_+_|

Pokud se nyní podíváte na CPU všechny výsledky s hodnotou null byly odstraněny!

Jak používat operátor PowerShell Not Equal k testování hodnot Null nebo Empty

Stejný princip můžete také použít k návratu všech služeb do počítače se stavem spuštěn. Zde je příkaz PowerShell:

|_+_|

Zde je výsledek příkazu v PowerShellu:

Aby výsledek vypadal lépe, můžeme výstup do potrubí Formátovací tabulka – poté znovu uspořádejte záhlaví. Zde je upravený příkaz:

|_+_|

A zde je výsledek v PowerShellu…

Jak používat operátor PowerShell Not Equal k testování hodnot Null nebo Empty

Jak používat operátor PowerShell Not Equal k testování $True nebo $False

Jak používat operátor PowerShell Not Equal k testování $True nebo $False

Nemusí to však být zřejmé, pokaždé, když v příkazu použijete operátor PowerShell Not Equal, vrátí $True nebo $False. Hodnota $True nebo $False se pak použije k provedení jakýchkoli dalších příkazů.

$True, $False jsou automatické proměnné, které znamenají True a False.

Jako příklad v Get-Process příklad v poslední části, $_.CPU -ne $null prohlášení uvnitř Kde-Objekt jednoduše vrátil všechny procesy, které se vrátily Skutečný za prohlášení, $_.CPU -ne $null .

|_+_|

Dále všechny procesy, které se vrátily Nepravdivé pro, $_.CPU -ne $null výpis nebyl vrácen.

Chcete-li přesunout svůj bod domů, spusťte níže uvedený příkaz v PowerShell:

|_+_|

Je zřejmé, že 1 NENÍ rovno 2, takže očekáváme, že výsledek vrátí True. A zde je výsledek v PowerShellu…

Co takhle…

|_+_|

Vrátilo se to Nepravdivé protože to tvrzení NENÍ pravdivé.

Příklady operátorů PowerShell Not Equal

Příklady operátorů PowerShell Not Equal

V této části proberu dva praktické příklady operátoru PowerShell Not Equal. V prvním příkladu vám ukážu, jak použít operátor ne k testování více hodnot nebo podmínek.

Nakonec se ve druhé části dozvíte, jak používat operátor PowerShell Not Equal v příkazu IF.

PowerShell se nerovná Operátor více hodnot Příklad

Abychom ilustrovali, jak používat operátor PowerShell ne k testování více hodnot, vraťme se k Get-Service příklad příkazu v předchozí části.

|_+_|

V tomto příkazu jsme použili operátor PowerShell Not Equal k testování jedné podmínky. Příkaz vrátil pouze služby, které NEMAJÍ svůj stav jako Zastaveno.

Stav je testován v rámci Kde-Objekt část příkazu. Zde je výsledek příkazu:

Podle očekávání vrátil příkaz VŠECHNY služby se stavem Spuštěno.

Co když chci některé služby odstranit, přestože mají stav Spuštěno?

Mohu toho dosáhnout přidáním více hodnot (nebo podmínek) do Kde-Objekt část příkazu. Řekněme například, že nechci vrátit následující služby – AJRouter , ALG , a AppMgmt .

Abych odstranil tyto služby z výsledku, upravím předchozí příkaz, jak je uvedeno níže:

|_+_|

Výsledek upraveného příkazu nezahrnuje tyto 3 služby!

PowerShell se nerovná Operátor více hodnot Příklad

Případně můžete změnit výsledek posledního příkazu pomocí nebo místo a.

Chcete-li například vrátit všechny servery bez názvu AppIDSvc NEBO všechny služby se stavem NOT se rovná spuštěno, spusťte níže uvedený příkaz:

|_+_|

Bohužel výsledek není příliš užitečný. Důvod, proč to není příliš užitečné, je tento: i když jsem chtěl odstranit služby se stavem NErovná se zastaveno, protože mám druhou podmínku spojenou nebo – výsledek zahrnoval obě služby se stavem Spuštěno a Zastaveno.

Každopádně jsem chtěl jen ilustrovat, jak testovat více podmínek pomocí operátoru PowerShell Not Equal!

Jak používat PowerShell, který se NErovná příkazu If

V tomto příkladu vytvořím skript, který vytvoří složky pomocí jmen v textovém souboru níže.

Zde je skript, který vytváří složky pomocí jmen zobrazených v textovém souboru uvedeném výše:

|_+_|

Než spustím skript, zde je složka uložená v Cesta ke složce proměnná (řádek 1 kódu). Složka je prázdná.

Pokud chcete skript vyzkoušet, změňte následující proměnné na existující cestu ve vašem počítači:

$FolderPath : Cesta ke složce, kde chcete vytvořit nové složky
$ TextFilePath : Úplná cesta k textovému souboru s názvy složek, které chcete vytvořit.

Nakonec, chcete-li skript spustit, zkopírujte jej do PowerShell ISE a spusťte jej.

Jakmile jsem spustil skript, byly složky vytvořeny ve složce určené v Cesta ke složce proměnná.

Níže jsem vysvětlil, co každý řádek skriptu dělá. Věnujte pozornost cestě operátora PowerShell Not Equal – $ checkPath -není $ true část – řádek 6.

|_+_|

Zde je vysvětlení každého řádku skriptu:

    Řádek 1: Uloží cestu, kterou chcete uložit nové složky, do proměnné s názvem Cesta ke složce .
|_+_|
    Řádek 2: Uloží cestu k textovému souboru s názvy složek do proměnné s názvem TextFilePath .
|_+_|
    Řádek 3: Extrahuje obsah textového souboru (názvy složek) s příponou Získejte obsah příkaz. Poté uloží výsledek do názvy složek proměnná.
|_+_|
    Řádek 4: Otevře se Pro každého výpisový blok. The Pro každého příkaz iteruje výsledek textového souboru (uloženého v názvy složek proměnná). Poté při každé iteraci uloží název složky do časové proměnné, název složky .
|_+_|
    Řádek 5: Provádí se v rámci Pro každého blok příkazů: Používá Testovací cesta příkaz ke kontrole, zda cesta ke složce existuje v cestě složky uložené v Cesta ke složce proměnná.

    Výsledek Testovací cesta příkaz je $True nebo $False.
|_+_|
    Řádek 6: Představuje LI prohlášení (stále v Pro každého blok výpisů). Zde používáme operátor PowerShell Not Equal ke kontrole, zda výsledek Testovací cesta příkaz je $True nebo $False.
|_+_|
    Řádek 7: V tomto řádku, pokud $checkPath -ne $true NENÍ rovno Skutečný , použijte Nový předmět příkaz k vytvoření složky s názvem uloženým v časové proměnné, název složky .

    Navíc k zastavení Nový předmět příkaz ze zobrazení jakýchkoli výsledků, přesuňte jej potrubím do Out-Null příkaz.

    Nakonec zavřete LI blok příkazů s uzavřenou závorkou }.
|_+_| Pokud spustíte Nový předmět příkaz, aniž by to bylo potrubím Out-Null zobrazí podrobnosti o vytvořené složce.
    Řádek 8: Zavři Pro každého blok příkazů s uzavřenou závorkou }.
|_+_|

To je ono! Náš aktualizovaný průvodce operátora PowerShell Not Equal (ne).

Doufám, že vám tento návod pomohl. Pokud vám to pomohlo, hlasujte Ano na otázku Byl tento příspěvek užitečná níže.

Případně můžete položit otázku, zanechat komentář nebo poskytnout další zpětnou vazbu pomocí formuláře Zanechat odpověď, který najdete na konci této stránky.

A nakonec, pro další PowerShell tech S Zones, navštivte naši stránku průvodce Windows PowerShell How-To. Velmi užitečná vám může být také naše stránka Práce z domova.

Tento článek byl kompletně přepsán a aktualizován o nové příklady.

Reference a další čtení

  1. O porovnávacích operátorech
  2. O logických operátorech
  3. Kde-Objekt