- Windows PowerShell -Contains
- Témata pro podmíněný operátor -Contains prostředí PowerShell
- Příklad 1a: PowerShell -Contains
- Příklad 1b:
- Guy doporučuje: (FREE TOOL)
- Příklad 2: Hledání hodnoty v kolekci
- Příklad 3: PowerShell -Contains Spreadsheet
- Guy doporučuje:
- Příklad 4: PowerShell -CContains
- Příklad 5: PowerShell -NotContains
- Guy doporučuje: SolarWinds Engineer’s Toolset (FREE TRIAL)
- O_operátorech
- Tady je seznam typů operátorů prostředí PowerShell
- Souhrn operátoru -Contains Conditional prostředí PowerShell
- Podívejte se na další příklady řízení toku v prostředí Windows PowerShell
Windows PowerShell -Contains
Pokud jde o filtrování nebo vyhledávání dat, máme na výběr z možností -Match, -Like a -Contains. I když se jednotlivé podmíněné operátory překrývají, každý z nich má ve skriptech prostředí PowerShell svou osobitou úlohu.
-Contains je nejlepší pro hledání přesné hodnoty. Pokud chci, aby příkaz vrátil buď True, nebo False, začnu s -Contains, zatímco pokud chci seznam výsledků, zkusím -Match nebo -Like.
Témata pro podmíněný operátor -Contains prostředí PowerShell
- Příklad 1: PowerShell -Contains (základ)
- Příklad 2: Hledání hodnoty v kolekci
- Příklad 3: PowerShell -Contains Spreadsheet
- Příklad 4: PowerShell -CContains
- Příklad 5: PowerShell -NotContains
- PowerShell -Match
- PowerShell -Like
Příklad 1a: PowerShell -Contains
PowerShell používá podstatná jména v jednotném čísle, proto je „contains“ sloveso a ne podstatné jméno v množném čísle. Vlastností příkazu -Contains je, že obvykle vrací hodnotu „True“ nebo „False. Pokud hledáte příkaz, který vrátí seznam hodnot, použijte -Match nebo -Like.
# PowerShell -Contains OperatorClear-Host$ArraySimple =@("House","Flat","Bungalow")$ArraySimple -Contains "Flat"# Result PS> True
Příklad 1b:
Příkaz -Contains může být frustrující, protože je velmi vybíravý. Po chvíli si uvědomíte, že je to jen designová vlastnost, pokud se vám nelíbí, zkuste -Match.
# PowerShell -Contains OperatorClear-Host$ArraySimple =@("House","Flats","Bungalow")$ArraySimple -Contains "Flat"# Result PS> False
Poznámka 1: -Contains interpretuje „Flats“ a „Flat“ jako různé, a proto vrací False; nezáleží na tom, že Flat je podmnožinou Flats.
Výzva: Nahraďte -Match za -Contains.
Guy doporučuje: (FREE TOOL)
Windows Management Instrumentation (WMI) je jedním ze skrytých pokladů operačních systémů společnosti Microsoft. Společnost SolarWinds naštěstí vytvořila bezplatný monitor WMI pro prostředí PowerShell, abyste mohli tyto klenoty informací o výkonu objevit a vylepšit tak své skripty prostředí PowerShell.
Zbavte se dohadů, které čítače WMI použít při skriptování operačního systému, služby Active Directory nebo serveru Exchange. Vyzkoušejte tento monitor WMI – je zdarma.
SolarWinds WMI Monitor Download 100% Free Tool
Příklad 2: Hledání hodnoty v kolekci
-Contains bych zvolil jako podmíněný operátor pro situace, kdy bych chtěl testovat jednu konkrétní položku v kolekci, poli nebo hashtable.
# PowerShell -Contains$Collection = "Peter Smith", "Paula Harris", "Joan Evans"$Collection -Contains "Paula"# Result PS> False
Poznámka 2: Pokud byste zakódovali: $Collection -Contains „Paula Harris“
Výsledek by byl: True. Potřebujete přesnou shodu celé položky.
Příklad 3: PowerShell -Contains Spreadsheet
Předpokládejme, že chceme vyhledávat v souboru s názvem links.csv. Dále můžeme použít Import-Csv pro načtení dat, abychom mohli testovat hodnoty pomocí -Contains.
Příprava
Můj tabulkový procesor se jmenuje links.csv
Soubor jsem uložil do D:\PowerShell
Název sloupce je „Vlastní kanál“
Viz obrázek vpravo.
Guy doporučuje:
SolarWinds Network Performance Monitor (NPM) vám pomůže zjistit, co se děje ve vaší síti. Tento nástroj vás také provede řešením problémů; ovládací panel vám ukáže, zda je hlavní příčinou nefunkční spojení, vadné zařízení nebo přetížení zdrojů.
Nejvíce se mi líbí způsob, jakým NPM navrhuje řešení síťových problémů. Má také možnost sledovat stav jednotlivých virtuálních počítačů VMware. Pokud vás zajímá řešení problémů a vytváření síťových map, doporučuji vyzkoušet NPM v rámci 30denní bezplatné zkušební verze.
SolarWinds Network Performance Monitor Stáhnout 30denní zkušební verzi ZDARMA
Příklad 4: PowerShell -CContains
Stejně jako u ostatních podmíněných operátorů prostředí PowerShell můžete i u nich vynutit rozlišování velkých a malých písmen tím, že před příkaz vložíte písmeno ‚C‘; CContains není překlep!
Poznámka 4: Jde o to, že v tabulce je hodnota jasně ‚LinkTop‘, když vynutíme citlivost na malá a velká písmena pomocí CContains, není to totéž jako ‚linktop‘, proto je výsledek False.
Příklad 5: PowerShell -NotContains
Negativní -NotContains není tak užitečný jako -NotMatch. Z toho, co jsme se již naučili, je však syntaxe předvídatelná.
Poznámka 5: Nezapomeňte, že u -Contains, a tím i -NotContains, musí být shoda přesná. Neexistuje žádný „Vlastní kanál“ s názvem přesně „odkaz“.
Podívejte se na další informace o porovnáních PowerShell s -Like“
Guy doporučuje: SolarWinds Engineer’s Toolset (FREE TRIAL)
Tento Engineer’s Toolset poskytuje komplexní konzoli 50 nástrojů pro řešení problémů s počítačem. Guy říká, že mi pomáhá sledovat, co se děje v síti, a každý nástroj mě naučí více o fungování základního systému.
Je tu tolik dobrých pomůcek; je to jako mít volnou ruku cukrárny. Naštěstí jsou nástroje zobrazeny logicky: monitorování, zjišťování sítě, diagnostika a nástroje Cisco. Vyzkoušejte si nyní sadu nástrojů SolarWinds Engineer’s Tools ve 14denní bezplatné zkušební verzi!
Sada nástrojů SolarWinds Engineer’s Tools ke stažení na 14denní zkušební verzi ZDARMA
O_operátorech
# For even more information about PowerShell Operators try:Get-Help about_Operators
Tady je seznam typů operátorů prostředí PowerShell
Podívejte se také na PowerShell -.Match“
„
Souhrn operátoru -Contains Conditional prostředí PowerShell
Když hledáte přesnou hodnotu, pak by byl -Contains mou první volbou podmíněného operátoru. Operátory -Match nebo -Like jsou vhodnější pro scénáře, kdy potřebujete pouze částečnou shodu nebo potřebujete seznam položek.
Podívejte se na další příklady řízení toku v prostředí Windows PowerShell
– PowerShell Home – PowerShell If Statement – PowerShell ElseIf – Free Permissions Analyzer
– Podmíněné operátory – PowerShell -Match – PowerShell -Like – PowerShell -Contains
– PowerShell Comparison Operators – PowerShell Syntax – Where Filter – PowerShell Else
Prosím, napište mi, pokud máte lepší příklad skriptu. Také prosím nahlaste případné faktické chyby, gramatické chyby nebo nefunkční odkazy, rád závadu opravím.