Ön küzd a PowerShell összehasonlító operátorok megértésével, mint például a eq, ne, ceq és . Ha igen, olvassa tovább.

jön egy szoftver fejlesztési háttér az első fokon volt egy ” Huh?”a pillanat az volt, amikor először láttam a PowerShell összehasonlító operátorait eq, ceq, cne stb., Az összes többi nyelvnek összehasonlító operátorai vannak, de nem egészen olyanok, mint a PowerShell. ==és <>.

nem csak a szintaxis teljesen másnak tűnik, mint a tipikus programozási nyelv, hanem másképp viselkednek, amikor összehasonlítják az értékgyűjteményeket.

Ez valami, ami igazán felakasztott, amikor megismertem a PowerShell-t, de most úgy tűnik, mint az öreg sör mondás; ez egy megszerzett íz.,

nézzük át röviden, mi az összehasonlító operátor, ha ismeretlen vagy, és mélyebben belemerülsz a PowerShell által bevezetett árnyalatokba. Hamarosan, akkor képes lesz arra, hogy forgat operátorok a PowerShell szkriptek nem probléma.

mint már említettem, minden programozási / szkriptnyelvnek összehasonlító operátorai vannak. A legalapvetőbb értelemben összehasonlító operátorokra van szükség annak értékeléséhez, hogy a különböző dolgok hogyan hasonlítanak más dolgokhoz. Arra használják őket, hogy két tárgyat vegyenek fel, hogy megnézzék, mi a különbség (ha van ilyen) a két objektum között.,

a PowerShell esetében az operátorok az értékek Gyűjteményében lévő elemek megtalálására is használhatók.

ehhez a bejegyzéshez átnézem az esélyegyenlőségi operátorokat és azt, hogy a PowerShell hogyan használja őket. Ezek aeq ésne esetérzékeny társaikkalceq éscne. A teljes listához ugorhat át a Technet webhelyre, vagy csak használhatja a Get-Help about_comparison_operatorsA Powershell konzolban.,

PowerShell-EQ and-CEQ

Ha valaha is látnia kell, hogy egy objektum megegyezik-e egy másik objektummal, akkor a eq (eset-érzéketlen) vagy ceq (esetérzékeny) operátorokat kell használnia. Ezek az operátorok tesztelik az egyes entitások értékét, amelyekkel összehasonlítani szeretne.

amikor először elkezdtem tanulni a PowerShell-t, folyamatosan valami ilyesmit csinálok

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

hamarosan elég lesz ahhoz, hogy ezt ne tegye meg. A= jel egy hozzárendelési operátor, nem összehasonlító operátor., Nem használhatja a= jelet az egyik érték összehasonlításához a másikkal.

ennek megfelelő módja a kifejezés bal oldalán ellenőrizendő érték meghatározása, valamint a eq operátor használata. Íme egy példa a eqés ceq operátorokra és azok használatának módjára.,

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.,

Ez mind jó skalár (egyetlen) értékek, de akkor is megtalálja az összes esetben bizonyos értékek segítségével ezek az operátorok is. Például a PowerShell-eq operátor segítségével szűrheti az elemeket egy tömbben:

az Eq használata a tömbök kereséséhez

ha van egy változó egy gyűjtemény értékek, mint például egy tömb használhatjaeqésceq hogy megtalálja az összes esetben értékek a gyűjteményben.,

figyeljük meg,hogy megtalálta az összes esetben az egész 9 megpróbáltuk összehasonlítani. Mindig ezt a praktikus módszert használom.

-ne és-CNE

a szemközti oldalon mindkettő neés cne. Pontosan ellentétesek a eq és ceq, de ugyanazt a viselkedést csak szemben mutatják. Nem az egyenlőséget tesztelik,hanem az egyenlőtlenséget.

PowerShells ne vs., cne

remélem, ez ad egy jó magyarázat az egyenlőség összehasonlító operátorok. Ez tényleg kaptam letette, mint egy újonc, és soha nem igazán kattintott rám, amíg én csak verte be benyújtása hibaüzenetek. Remélem, ez a bejegyzés megakadályozza ugyanazt a vereséget, amit kaptam.

Vélemény, hozzászólás?

Az email címet nem tesszük közzé. A kötelező mezőket * karakterrel jelöltük