PowerShell Basics: If Anweisung

Einführung in die Windows PowerShell If Anweisung

Powershells ‚If‘ Anweisung kommt unter dem Dach der Flusskontrolle. Sobald Sie die Grundkonstruktion beherrschen, können Sie ihre Nützlichkeit erhöhen, indem Sie die Anweisungen ‚Else‘ und ‚ElseIf‘ anhängen. Eine meiner bevorzugten alternativen Strategien ist die Verwendung von ‘Switch‘.,

Themen für PowerShell If-Anweisung

  • Konstruktion von ‚If‘ – Anweisung
  • Beispiel 1: Nur Wenn
  • Beispiel 2: If … Else
  • Beispiel 3: PowerShell ElseIf
  • PowerShell, Wenn Nicht
  • PowerShell, Wenn -Oder
  • Zusammenfassung der PowerShell If-Konstruktion

Bau der PowerShell – ‚If‘ –

Wie bei so vielen PowerShell-Konstruktionen, die Art der Klammer bedeutet, wie zu brechen das Skript in Abschnitte., Es lohnt sich, das in unseren Speicher zu tätowieren (Klammern sind für den ersten Teil, nämlich die Bedingung), während {Klammern für den Blockbefehl} sind.

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

Zusammenfassung: In PowerShell führt ‚If‘ Anweisungen aus, die von der Wahrheit des Testausdrucks abhängen.

Beispiel 1a: Einfaches ‚ If ‚

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

Lernpunkte

Hinweis 1: Verfolgen Sie die obige Konstruktion und trennen Sie die beiden Komponenten: if (test) und {was zu tun ist}.

Hinweis 2: Vermeiden Sie überdenken; Es gibt keine ‚ Then ‚in einer PowerShell‘ If ‚ – Anweisung., Mein Rat ist, anstatt sich Gedanken über „Wenn dann“ zu machen, genau auf die beiden Arten von Klammer zu achten. Darüber hinaus gibt es in PowerShell kein endif wie in VBScript.

Hinweis 3: Um Ihr Verständnis zu überprüfen, versuchen Sie, „Größer als Null“ in eine andere Textzeichenfolge umzuwandeln, z. B. „Kleiner als Null“. Wenn Sie dies getan haben, setzen Sie $Number im obigen Beispiel 1a auf -1.

Beispiel 1b: PowerShell-Skript überprüft, ob eine Datei vorhanden ist

Hinweis 4: Sie möchten wahrscheinlich die Datei ändern, auf die $ChkFile., In der Tat schreit das Skript, um für ein konstruktiveres {Ergebnis} geändert zu werden.

Hinweis 5: Sie können problemlos eine else-Anweisung anhängen, um eine nicht vorhandene Datei zu berücksichtigen.
Else {Write-Host "File does not exist"}

Mehr zum Testpfad von PowerShell

Guy empfiehlt: Free WMI Monitor for PowerShell (KOSTENLOSES TOOL)

Windows Management Instrumentation (WMI) ist einer der verborgenen Schätze der Betriebssysteme von Microsoft., Glücklicherweise hat SolarWinds einen kostenlosen WMI-Monitor für PowerShell erstellt, damit Sie diese Edelsteine an Leistungsinformationen entdecken und so Ihre PowerShell-Skripte verbessern können.

Nehmen Sie die Vermutungen, aus denen WMI Zähler zu verwenden, wenn das Betriebssystem, Active Directory oder Exchange-Server Scripting. Probieren Sie diesen WMI-Monitor aus – es ist kostenlos.

SolarWinds WMI Monitor Download 100% kostenloses Tool

Wenn Logik und Taktik

Es ist selten, dass meine erste If-Konstruktion die gewünschten Ergebnisse liefert., Das Erfolgsgeheimnis besteht darin, mit dem If-Test zu experimentieren oder alternativ einen oder mehrere ElseIf-Tests mit dem entsprechenden {outcome block} einzuführen.

In diesem Beispiel habe ich eingeführt haben, Nicht in die Logik:

Beispiel 1b: PowerShell-Wenn -Nicht-Anweisung zu Überprüfen, ob ein Service

Hinweis 6: Dieses Skript verwendet das Display die Name-Eigenschaft des Dienstes. Denken Sie daran, in PowerShell ‚If Then‘ existiert nicht. Beachten Sie, es ist einfach ‚Wenn‘.

Hinweis 7: Beobachten Sie im Vorbeigehen die If-Not-Konstruktion; übrigens-Not wird manchmal mit einem Ausrufezeichen abgekürzt ! in PowerShell.,

Hinweis 8: Dieses Skript schreit nach einer Else-Anweisung. Wir müssen wissen, ob der benannte Dienst installiert wurde.

Hinweis 9: Weitere Informationen zu-ErrorAction SilentlyContinue

Beispiel 1c: PowerShell If Anweisung zum Überprüfen von IP-Adressen

Hier ist ein weiteres reales Beispiel für die ‚If Anweisung‘ in Aktion. Die Idee ist, 20 IP-Adressen zu pingen. Die Logik besagt, dass, wenn der StatusCode 0 ist, eine Beschriftung mit der Aufschrift „IM NETZWERK“ angezeigt wird.

Hinweis 10: Sobald Anweisungen kompliziert werden, ist es an der Zeit, den Switch-Parameter von PowerShell zu untersuchen.,

Guy empfiehlt: Network Performance Monitor (KOSTENLOSE TESTVERSION)

SolarWinds Network Performance Monitor (NPM) hilft Ihnen herauszufinden, was in Ihrem Netzwerk passiert. Dieses Dienstprogramm führt Sie auch durch die Fehlerbehebung; Das Dashboard zeigt an, ob die Hauptursache eine defekte Verbindung, fehlerhafte Geräte oder Ressourcenüberlastung ist.

Was mir am besten gefällt, ist die Art und Weise, wie NPM Lösungen für Netzwerkprobleme vorschlägt. Es hat auch die Fähigkeit, den Zustand der einzelnen virtuellen VMware-Maschinen zu überwachen., Wenn Sie an der Fehlerbehebung und dem Erstellen von Netzwerkkarten interessiert sind, empfehle ich Ihnen, NPM in einer 30-tägigen kostenlosen Testversion auszuprobieren.

SolarWinds Network Performance Monitor 30-Tage-Testversion herunterladen

Beispiel 1d: Dateiinhalt Beispiel für einfaches ‚If‘

PowerShell verfügt über einen Stapel von Hilfedateien. Eine dieser Dateien enthält Hilfe zur if-Anweisung. Im folgenden Beispiel verweist $File auf diese Datei. $Content wird auf den Inhalt der Datei. Die dritte Zeile versucht, eine Zeichenfolge mit dem Inhalt der Datei abzugleichen.,

Lernpunkte

Das obige Beispiel befasst sich mit dem Abgleichen einer Zeichenfolge „The if Statement“ mit dem Inhalt der integrierten Hilfedatei.

Beispiel 2a: ‚If‘ Mit ‚Else‘

Dieses Beispiel behandelt einfaches ‚Else‘. Dies ist ein einfacher Befehl, im Gegensatz zu ElseIf gibt es keine zweite Testkonstruktion, ‚Else‘ folgt nur, um zu reflektieren, was zu tun ist, wenn die If-Anweisung falsch ist.

Lernpunkte

Der beste Weg, um zu sehen, wie ‚else‘ funktioniert, besteht darin, Zeile 3 so zu ändern:
($File-Match „The ifyyyy Statement“).,

Beispiel 2b: Überprüfen, ob ein Dienst installiert wurde

Weitere Informationen zu PowerShell Else „

Guy empfiehlt: SolarWinds Engineer ‚ s Toolset (KOSTENLOSE TESTVERSION)

Das Toolset dieses Ingenieurs bietet eine umfassende Konsole mit 50 Dienstprogrammen zur Fehlerbehebung bei Computerproblemen. Guy sagt, es hilft mir zu überwachen, was im Netzwerk passiert, und jedes Tool lehrt mich mehr darüber, wie das zugrunde liegende System funktioniert.

Es gibt so viele gute Gadgets; es ist wie freie Zügel eines Sweetshop., Zum Glück werden die Dienstprogramme logisch angezeigt: Überwachung, Netzwerkerkennung, Diagnose und Cisco-Tools. Probieren Sie jetzt das Toolset des SolarWinds Engineers in einer 14-tägigen kostenlosen Testversion aus!

SolarWinds Engineer ‚ s Toolset 14-tägige KOSTENLOSE Testversion herunterladen

Beispiel 2c: PowerShell If-Not Logic

Der Zweck dieses Skripts besteht darin,- Not logic zu verwenden, um nach dem Alarmierungsdienst zu suchen. Ein Szenario ist, dass Sie mit Windows 7-Computern arbeiten und diesen Dienst nicht mehr installieren.

Beachten Sie, wie-Not die ‚If‘ – Logik im Vergleich zu Beispiel 1 umkehrt.,

Hinweis 11: Weitere Beispiele für Powershells If-Not-Logik.

Beispiel 2d: NetSh

In diesem Beispiel wird der Status einer Firewall auf einem Windows-Clientcomputer wie Windows 8.1 oder Windows 7 überprüft.

Recherchieren von If, Else und ElseIf

  • Weitere Informationen finden Sie in der integrierten About_If-Datei
  • So deaktivieren Sie Windows 8-Firewalls mit einer Gruppenrichtlinie.
Get-Help About_If

Beispiel 3: ElseIf

Dieses Beispiel hat eine echte Aufgabe; um zu überprüfen, ob wir den Namen einer tatsächlichen Datei haben., Denken Sie daran, dass auf die zweite (Test-Anweisung) ein zweites {Block-Skript} folgen muss.

Sehen Sie viel mehr auf der PowerShell ElseIf Konstruktion “

Lernpunkte

Hinweis 12: Der Vorteil von ElseIf über alles andere, ist, dass wir einen neuen Test einführen können. Im obigen Beispiel verwenden wir ElseIf, um zu überprüfen, ob die Länge der Datei kleiner als 1 ist., Um den ‚ElseIf‘-Block zu aktivieren, setzen Sie $File auf eine nicht vorhandene Datei, z. B.
$File = Get-Help about_ifxx

Hinweis 13: Um das endgültige ‚Else‘ auszulösen, versuchen Sie, Folgendes zu ändern:
$File = Get-Help about_if
zu
$File = Get-Help about_scope

Wenn Sie Zeit haben, können Sie weitere ‚ElseIf‘ Aussagen für andere Eventualitäten gerecht zu werden. Wenn die ElseIf-Konstruktion unhandlich wird, versuchen Sie alternativ den Befehl superior switch.

Guy empfiehlt: SolarWinds Admin Bundle für Active Directory (KOSTENLOSES TOOL)

Benutzer aus einer Tabelle importieren., Geben Sie einfach eine Liste der Benutzer mit ihren Feldern in der obersten Zeile, und speichern unter .csv-Datei. Starten Sie dann dieses KOSTENLOSE Dienstprogramm und passen Sie Ihre Felder mit den Attributen von AD an, klicken Sie auf und importieren Sie die Benutzer.

Optional können Sie den Namen der OU angeben, in der die neuen Konten geboren werden. Laden Sie Ihr KOSTENLOSES Massenimport-Tool herunter.,“0de5877345″> SolarWinds Admin Bundle 100% KOSTENLOSES Tool Bundle herunterladen

Wenn Sie eine umfassendere Anwendungsanalysesoftware benötigen, laden Sie eine kostenlose Testversion von SAM herunter (Server & Application Monitor)

About_If

Wenn Sie ein anderes Konto der If-Anweisung von PowerShell hätten, dann schauen Sie sich die integrierte Hilfedatei an

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

Dies ist Microsofts Erklärung:

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

Windows PowerShell wertet die <test1> bedingter Ausdruck als wahr oder falsch aus., Sollte das Ergebnis wahr sein, gehorcht PowerShell dem, was sich in den {geschweiften Klammern} befindet, woraufhin PowerShell die If-Anweisung beendet.

Falls der erste Test falsch ist, arbeitet sich PowerShell durch die ElseIf-Anweisungen.

Das ‚Vehicle‘ für unsere Tests enthüllt übrigens eine ganze Familie von ‚about_zyx…‘ – Dateien. Mein Punkt ist, dass es keinen Befehl gibt: ‚Get-Help if‘, es gibt jedoch eine Hilfedatei namens ‚about_if‘. Wenn Sie im PowerShell-Verzeichnis nachsehen, werden außerdem „Info“ – Dateien angezeigt, die Befehle wie “ If “ und „ElseIf“ unterstützen., Sie können diese ‚About‘ – Dateien mit dem Befehl auflisten:

Weitere Informationen zur Hilfe zu *

Zusammenfassung der If-Konstruktion von PowerShell

Wenn es um das Filtern der Ausgabe geht, ist eine der ältesten und besten Anweisungen die If-Klausel. Wie üblich besteht das Geheimnis des Verständnisses der Syntax darin, dem Stil der Klammer besondere Aufmerksamkeit zu schenken. If (Klammer für den Test) und {geschweifte Klammern für die Aktion}. Sobald Sie die grundlegende ‚If‘ – Anweisung gemeistert haben, erweitern Sie Ihre Fähigkeiten, indem Sie nach ‚Else‘ und ‚ElseIf’suchen.,

Wenn Sie diese Seite mögen dann bitte teilen Sie es mit Ihren Freunden

Siehe mehrere Windows PowerShell-flow-control-Beispiele

• PowerShell zu Hause • PowerShell If-Anweisung • PowerShell ElseIf • Free Permissions Analyzer

• Bedingte Operatoren • PowerShell -Match • PowerShell -Wie • PowerShell -Enthält

• PowerShell-Vergleichsoperatoren • PowerShell-Syntax • Where-Filter • PowerShell Else

Bitte E-Mail mich wenn Sie haben eine bessere Beispiel-Skript., Bitte melden Sie auch sachliche Fehler, Grammatikfehler oder defekte Links, ich korrigiere den Fehler gerne.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Zur Werkzeugleiste springen