PowerShell Bază: if

Introducere În Windows PowerShell Dacă Declarația

PowerShell lui „Dacă” declarația vine sub umbrela de control al fluxului. Odată ce stăpânești construcția de bază, poți crește utilitatea acesteia prin adăugarea declarațiilor „Else” și „ElseIf”. Una dintre strategiile mele alternative preferate este să folosesc „Switch”.,

Subiecte pentru PowerShell Dacă Declarația

  • Construcția de „Dacă” Declarație
  • Exemplu 1: Simplu Dacă
  • Exemplul 2: Dacă … Altceva
  • Exemplul 3: PowerShell ElseIf
  • PowerShell Dacă -Nu
  • PowerShell Dacă -Sau
  • Rezumat al PowerShell Daca Construcții

Construcția PowerShell „Dacă” Declarație

cu atât de multe PowerShell construcții, tipul de suport semnifică modul de a sparge script-ul în secțiuni., Merită să ne tatuăm în memoria noastră că (parantezele parantezelor sunt pentru prima parte, și anume condiția), în timp ce {bretelele sunt pentru comanda blocului}.

If (condition) {Do stuff}# Another explanation would beIf (test) {"Execute when true"}

rezumat: în PowerShell, ” If ” execută declarații condiționate de adevărul expresiei de testare.

Exemplul 1a: Simplu „Dacă”

# PowerShell If Statement Simple Example$Number = 10If ($Number -gt 0) {"Bigger than zero"}

Puncte de Învățare

Nota 1: Trace mai sus de construcții, și să separe cele două componente: if (test) și {ce să facă}.

Nota 2: evita supra-cred; nu există nici o „atunci” într-o declarație PowerShell „dacă”., Sfatul meu este că, în loc să vă faceți griji pentru „Dacă atunci”, acordați o atenție deosebită celor două tipuri de paranteze. În plus, nu există endif în PowerShell, așa cum există în VBScript.

Nota 3: pentru a vă verifica înțelegerea, încercați să modificați „mai mare decât Zero „la un șir de text diferit, cum ar fi:”mai puțin decât zero”. După ce ați făcut acest lucru, setați $Number la -1 în exemplul 1a de mai sus.

exemplul 1b: PowerShell Script pentru a verifica dacă există un fișier

Nota 4: probabil doriți să schimbați fișierul la care se face referire de $ChkFile., Într-adevăr, scenariul strigă să fie modificat pentru un rezultat mai constructiv.nota 5: puteți adăuga cu ușurință o declarație else pentru a răspunde unui fișier care nu există.
Else {Write-Host "File does not exist"}

Vezi mai multe pe PowerShell Test-Calea

Tipul Recomandă: Gratuit WMI Monitor pentru PowerShell (INSTRUMENT GRATUIT)

Windows Management Instrumentation (WMI) este una dintre comorile ascunse ale sistemelor de operare Microsoft., Din fericire, SolarWinds au creat un Monitor WMI gratuit pentru PowerShell, astfel încât să puteți descoperi aceste pietre prețioase de informații despre performanță și, astfel, să vă îmbunătățiți scripturile PowerShell.

ia presupunerile din care contoare WMI pentru a utiliza atunci când scripting sistemul de operare, Active Directory, sau Exchange Server. Încercați acest monitor WMI – este gratuit.

SolarWinds WMI Monitor descărcare 100% instrument gratuit

dacă logica și tactica

este rar ca prima mea construcție ” If ” produce rezultatele dorite., Secretul succesului este să experimentați testul If sau, alternativ, să începeți să introduceți unul sau mai multe teste ElseIf cu {blocul de rezultat} corespunzător.

În acest exemplu am introdus-Not in the logic:

exemplul 1b: PowerShell If-Not declarație pentru a verifica pentru un serviciu

nota 6: acest script utilizează proprietatea nume de afișare a serviciului. Amintiți-vă în PowerShell „dacă atunci” nu există. Observați că este clar „dacă”.nota 7: observați în trecere construcția If-Not; întâmplător, – Not este uneori abreviată la un semn de exclamare ! în PowerShell.,

Nota 8: acest script strigă pentru o declarație Else. Trebuie să știm dacă serviciul numit a fost instalat.

Nota 9: a se Vedea mai pe -ErrorAction SilentlyContinue

Exemplu 1c: PowerShell if Pentru a Verifica Adresele IP

Aici este un alt exemplu din viața reală, a ‘if’ în acțiune. Ideea este de a ping 20 adrese IP. Logica spune că dacă codul de stare este 0, atunci afișați o etichetă care spune „în rețea”.

nota 10: Odată ce Declarațiile se complică, este timpul să investigați parametrul de comutare al PowerShell.,

Guy recomandă: Network Performance Monitor (încercare gratuită)

SolarWinds Network Performance Monitor (NPM) vă va ajuta să descoperiți ce se întâmplă în rețea. Acest utilitar vă va ghida, de asemenea, prin depanare; tabloul de bord va indica dacă cauza principală este o legătură ruptă, un echipament defect sau o supraîncărcare a resurselor.ceea ce îmi place cel mai mult este modul în care NPM sugerează soluții la problemele de rețea. De asemenea, are capacitatea de a monitoriza starea de sănătate a mașinilor virtuale VMware individuale., Dacă sunteți interesat de depanare și de crearea hărților de rețea, atunci vă recomand să încercați NPM într-o încercare gratuită de 30 de zile.

SolarWinds Network Performance Monitor descărcare încercare gratuită de 30 de zile

exemplul 1D: fișier conținut exemplu de simplu „dacă”

PowerShell are un lot de fișiere de ajutor. Unul dintre aceste fișiere conține ajutor despre declarația „dacă”. În exemplul de mai jos, $File face referire la acel fișier. $Content este setat la conținutul fișierului. A treia linie încearcă să potrivească un șir cu conținutul fișierului.,

puncte de învățare

exemplul de mai sus este preocupat de potrivirea unui șir „instrucțiunea if” cu conținutul fișierului de ajutor construit.

exemplul 2a: „dacă” cu „Else”

acest exemplu se ocupă cu „else” simplu. Aceasta este o comandă simplă, spre deosebire de ElseIf nu există o a doua construcție de testare, „Else” urmează doar pentru a reflecta ce trebuie făcut dacă declarația If este falsă.

puncte de învățare

cel mai bun mod de a vedea cum funcționează „altceva”este de a modifica linia 3 astfel:
($File-Match „Declarația ifyyyy”).,

Exemplul 2b: Verificarea Dacă un Serviciu A Fost Instalat

Vezi mai multe pe PowerShell Altceva „

Tipul Recomandă: SolarWinds Inginer Toolset (FREE TRIAL)

Acest Inginer Set de instrumente oferă o imagine de consola de 50 de utilitare pentru depanarea problemelor calculatorului. Guy spune că mă ajută să monitorizeze ceea ce se întâmplă în rețea, și fiecare instrument mă învață mai multe despre modul în care funcționează sistemul de bază.există atât de multe gadget-uri bune; este ca și cum ai avea frâu liber unui magazin de dulciuri., Din fericire, utilitățile sunt afișate logic: monitorizare, descoperire de rețea, diagnosticare și instrumente Cisco. Încercați setul de instrumente SolarWinds Engineer pe o încercare gratuită de 14 zile acum!

SolarWinds Inginer Set de instrumente de Descărcare de 14 zile de Încercare GRATUITĂ

Exemplu 2c: PowerShell Dacă -Nu Logica

scopul acestui script este de a angaja -Nu logica pentru a verifica pentru serviciu de Alertare. Un scenariu este că lucrați cu mașinile Windows 7 și nu mai instalează acest serviciu.

observați cum-nu inversează logica ” If ” în comparație cu exemplul 1.,nota 11: vedeți mai multe exemple de logică if-Not PowerShell.

exemplu 2D: NetSh

scopul acestui exemplu este de a verifica starea unui firewall pe o mașină client Windows, cum ar fi Windows 8.1 sau Windows 7.

cercetarea If, Else și ElseIf

  • Pentru mai multe informații, consultați fișierul about_if încorporat
  • vedeți cum dezactivați firewall-urile Windows 8 cu o politică de grup.
Get-Help About_If

Exemplul 3: ElseIf

acest exemplu are o sarcină reală; pentru a verifica dacă avem numele unui fișier real., Nu uitați că a doua (declarație de testare) trebuie urmată de un al doilea {script bloc}.

vedeți mult mai multe despre construcția PowerShell ElseIf „

puncte de învățare

nota 12: avantajul lui ElseIf față de else simplu, este că putem introduce un nou test. În exemplul de mai sus folosim ElseIf pentru a verifica dacă lungimea fișierului este mai mică de 1., Pentru a activa ‘ElseIf’ bloc, stabilit $de Fișier pentru un fișier inexistent, de exemplu
$File = Get-Help about_ifxx

Nota 13: Pentru a declanșa final „Altceva”, încercați să schimbați:
$File = Get-Help about_if

$File = Get-Help about_scope

Dacă aveți timp, puteți adăuga mai multe ‘ElseIf’ declarații pentru a satisface alte eventualități. În mod alternativ, dacă construcția ElseIf devine greoaie, încercați comanda superioară de comutare.

Guy recomandă: SolarWinds Admin Bundle pentru Active Directory (instrument gratuit)

Import utilizatori dintr-o foaie de calcul., Trebuie doar să furnizați o listă a utilizatorilor cu câmpurile lor în rândul de sus și să salvați ca .fișier csv. Apoi lansați acest utilitar gratuit și potriviți câmpurile cu atributele anunțului, faceți clic și importați utilizatorii.opțional, puteți furniza numele OU unde se vor naște noile conturi. Descărcați instrumentul gratuit de import în vrac.,”0de5877345″> SolarWinds Admin Pachet Descărcați 100% Instrument GRATUIT Pachet

Dacă aveți nevoie de mai cuprinzător aplicația software de analiză, Descărcați o versiune de încercare gratuită de SAM (Server & Application Monitor)

About_If

Dacă ai un alt cont de PowerShell Dacă declarație, apoi au o privire la built-in fișier de ajutor

# For even more information about 'If' and 'ElseIf' constructions:Get-Help about_If

Aceasta este o explicație Microsoft:

if (<test1>){<statement list 1>}

Windows PowerShell evaluează <test1> expresie condițională ca fie adevărat sau fals., În cazul în care rezultatul este adevărat, PowerShell se supune oricărui lucru din {paranteze ondulate}, după care PowerShell iese din instrucțiunea If.

în cazul în care primul test este fals PowerShell funcționează drum prin declarațiile ElseIf.

De altfel, „vehiculul” pentru testele noastre dezvăluie o întreagă familie de fișiere ” about_zyx…”. Ideea mea este că nu există nici o poruncă: ‘Get-help dacă, cu toate acestea, există un fișier de ajutor numit, ‘about_if’. În plus, dacă te uiți în directorul PowerShell, atunci veți vedea „despre” fișiere pentru a ajuta cu comenzi, cum ar fi „dacă” și „ElseIf”., Puteți lista aceste fișiere”Despre”cu comanda:

vedeți mai multe despre ajutor*

Rezumatul construcției if a PowerShell

când vine vorba de filtrarea ieșirii, una dintre cele mai vechi și mai bune declarații este clauza „If”. Ca de obicei, secretul înțelegerii sintaxei este de a acorda o atenție deosebită stilului de paranteză. If (paranteză pentru test) și {bretele pentru acțiune}. Odată ce ați stăpânit Declarația de bază „If”, extindeți-vă capacitățile cercetând „Else” și „ElseIf”.,

Dacă vă place această pagină, atunci vă rugăm să-l împărtășească cu prietenii tăi

Vezi mai multe Windows PowerShell de control al fluxului exemple

• PowerShell Acasă • PowerShell Dacă Declarația • PowerShell ElseIf • Gratuit Permissions Analizor

• Condiționată Operatorii • PowerShell -Meci • PowerShell -Ca • PowerShell -Conține

• PowerShell Operatori de Comparație • PowerShell Sintaxa • în cazul în Care Filtru • PowerShell Altceva

vă Rugăm să mi e-mail dacă aveți un exemplu mai bun scenariu., De asemenea, vă rugăm să raportați orice greșeli de fapt, erori gramaticale sau link-uri rupte, voi fi fericit pentru a corecta vina.

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *

Sari la bara de unelte