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.