Wie man mehrere Bedingungen in einer if-Anweisung kombiniert

  1. die if-Anweisung in PowerShell
  2. Verwenden Sie logische Operatoren, um mehrere Bedingungen in der if-Anweisung in PowerShell zu kombinieren
  3. Verwenden Sie mehrere Operatoren, um mehrere Bedingungen in der if-Anweisung in PowerShell zu kombinieren
  4. Verschachtelung von if-Anweisungen zum Kombinieren mehrerer Bedingungen in PowerShell
  5. Fazit
Wie man mehrere Bedingungen in einer if-Anweisung kombiniert

In PowerShell ist die if-Anweisung ein leistungsstarkes Werkzeug für Entscheidungen. Viele Aufgaben erfordern jedoch, dass Sie mehrere Bedingungen kombinieren, um eine genauere Kontrolle zu erhalten.

In diesem Artikel werden wir die verschiedenen Methoden betrachten, wie Sie mehrere Bedingungen mithilfe logischer Operatoren in der if-Anweisung von PowerShell kombinieren können.

die if-Anweisung in PowerShell

Hier ist ein einfaches Beispiel für eine if-Anweisung. Wenn die Bedingung in den Klammern ausgewertet wird und wahr ist, wird der Befehl Write-Host "2 ist gleich 2." ausgeführt.

Code:

if (2 -eq 2) {
    Write-Host "2 is equal to 2."
}

Wenn die angegebene Bedingung in den Klammern () wahr ist, wird der Befehl in den geschweiften Klammern {} ausgeführt.

Ausgabe:

2 is equal to 2.

Wenn die Bedingung $false ist, wird dieser Codeblock übersprungen. Das obige Beispiel verwendet eine Bedingung, aber Sie können auch mehrere Bedingungen in der if-Anweisung bewerten.

Verwenden Sie logische Operatoren, um mehrere Bedingungen in der if-Anweisung in PowerShell zu kombinieren

Die logischen Operatoren verbinden Aussagen und Ausdrücke in PowerShell. Sie können einen einzelnen Ausdruck verwenden, um mehrere Bedingungen zu testen, indem Sie sie verwenden.

Die unterstützten logischen Operatoren in PowerShell sind -and, -or, -not, -xor und !. In diesem Artikel werden wir nur besprechen, wie man die Operatoren -and, -or, -not und -xor verwendet, um mehrere Bedingungen in der if-Anweisung in PowerShell zu kombinieren.

Verwenden Sie den -and-Operator, um mehrere Bedingungen in der if-Anweisung in PowerShell zu kombinieren

Das folgende Beispiel verwendet den -and-Operator, um zwei Aussagen in der if-Anweisung zu verbinden. Wenn die erste Bedingung 5 ist kleiner als 10 wahr ist und die zweite Bedingung 7 ist größer als 5 wahr ist, wird der Befehl Write-Host ausgeführt.

Code:

if ((5 -lt 10) -and (7 -gt 5)) {
    Write-Host "The above conditions are true."
}

Ausgabe:

The above conditions are true.

Da beide Bedingungen in diesem Fall wahr sind, wird der Codeblock ausgeführt und die Nachricht "Die obigen Bedingungen sind wahr." wird in der Ausgabe gedruckt.

Verwenden Sie den -or-Operator, um mehrere Bedingungen in der if-Anweisung in PowerShell zu kombinieren

In diesem Code verwenden wir die Operatoren -lt (kleiner als) und -gt (größer als), um zu überprüfen, ob 5 kleiner als 10 oder 7 größer als 5 ist. Dann verwenden wir den -or-Operator, um zu prüfen, ob entweder (5 -lt 10) oder (7 -gt 5) wahr ist.

Code:

if ((5 -lt 10) -or (7 -gt 5)) {
    Write-Host "At least one of the above conditions is true."
}
else {
    Write-Host "Neither of the above conditions is true."
}

Ausgabe:

At least one of the above conditions is true.

Da beide Bedingungen im ursprünglichen Code wahr sind, wird ausgegeben, dass "Mindestens eine der Bedingungen wahr ist.".

Verwenden Sie den -not-Operator, um mehrere Bedingungen in der if-Anweisung in PowerShell zu kombinieren

Im folgenden Code haben wir eine Variable $number, die einen numerischen Wert darstellt. Wir verwenden die Operatoren -lt (kleiner als) und -gt (größer als), um zu überprüfen, ob die Zahl kleiner als 5 oder größer als 10 ist.

Der -or-Operator wird verwendet, um die beiden Bedingungen auf der linken und rechten Seite zu kombinieren. Er gibt wahr zurück, wenn mindestens eine der Bedingungen wahr ist. Da beide Bedingungen falsch sind, wird der -or-Ausdruck zu falsch ausgewertet.

Der -not-Operator wird auf das Ergebnis des -or-Ausdrucks angewendet. Er negiert das Ergebnis, da der -or-Ausdruck falsch ist; die Anwendung von -not macht es wahr.

Code:

$number = 7

if (-not ($number -lt 5 -or $number -gt 10)) {
    Write-Host "The number is between 5 and 10 (inclusive)."
}
else {
    Write-Host "The number is outside the range of 5 to 10."
}

Ausgabe:

The number is between 5 and 10 (inclusive).

Da der -not-Operator die kombinierte Bedingung wahr macht, wird der Code innerhalb des if-Blocks ausgeführt. Die Ausgabe zeigt an, dass der Wert von $number = 7 innerhalb des angegebenen Bereichs von 5 bis 10 (einschließlich) liegt.

Verwenden Sie den -xor-Operator, um mehrere Bedingungen in der if-Anweisung in PowerShell zu kombinieren

Der folgende Code überprüft zwei Bedingungen und verwendet den -xor-Operator, um deren kombinierte Wahrheit zu bestimmen. Innerhalb der if-Anweisung gibt es zwei Bedingungen: Die erste Bedingung ist, ob 5 kleiner als 10 ist, und die zweite Bedingung ist, ob 7 größer als 5 ist.

Der -xor-Operator ist ein exklusiver ODER-Operator, was bedeutet, dass er wahr zurückgibt, wenn genau einer seiner Operanden wahr ist und falsch, wenn beide Operanden wahr oder beide falsch sind.

In diesem Fall sind beide Bedingungen wahr, somit wird der -xor-Ausdruck zu falsch ausgewertet und der Code innerhalb des else-Blocks wird ausgeführt.

Code:

if ((5 -lt 10) -xor (7 -gt 5)) {
    Write-Host "Exactly one of the above conditions is true."
}
else {
    Write-Host "Neither or both of the above conditions are true."
}

Ausgabe:

Neither or both of the above conditions are true.

Die Ausgabe druckt "Weder noch beide der obigen Bedingungen sind wahr.", da sie anzeigt, dass keine der Bedingungen exklusiv wahr ist; beide Bedingungen sind entweder zusammen wahr oder falsch.

Verwenden Sie mehrere Operatoren, um mehrere Bedingungen in der if-Anweisung in PowerShell zu kombinieren

Ähnlich können Sie mehrere Bedingungen mit logischen Operatoren in der if-Anweisung von PowerShell kombinieren. In diesem Beispiel führen wir verschiedene Befehle basierend darauf aus, ob die kombinierten Bedingungen wahr oder falsch sind.

Der folgende Code kombiniert mehrere Bedingungen mit den logischen Operatoren -and und -or. Wenn eine dieser Bedingungen wahr ist, wird der erste Befehl (Write-Host "Es ist wahr.") ausgeführt, andernfalls wird der zweite Befehl (Write-Host "Es ist falsch.") ausgeführt.

Code:

if (((10 -lt 20) -and (10 -eq 10)) -or ((15 -gt 5) -and (12 -lt 6))) {
    Write-Host "It is true."
}
else {
    Write-Host "It is false."
}

Ausgabe:

It is true.

Hier überprüft die if-Anweisung die kombinierten Bedingungen und führt den entsprechenden Befehlsblock basierend auf der Auswertung dieser Bedingungen aus. Da die Bedingung wahr ist, wird die Nachricht "Es ist wahr." ausgegeben.

Denken Sie daran, jedes Set von Bedingungen in Klammern () zu setzen und die logischen Operatoren zu verwenden, die Ihren speziellen Anforderungen entsprechen.

Verschachtelung von if-Anweisungen zum Kombinieren mehrerer Bedingungen in PowerShell

Die Verschachtelung von if-Anweisungen kann wertvoll sein, wenn Sie komplexe Bedingungen haben, die mehrere Ebenen der Auswertung erfordern. Wenn Sie beispielsweise eine Bedingung in einem bestimmten Kontext überprüfen oder unterschiedliche Aktionen basierend auf variierenden Bedingungen durchführen müssen, ermöglicht die Verschachtelung von if-Anweisungen einen strukturierteren Ansatz.

In diesem Code deklarieren wir eine Variable $number = 15. Dann erstellen wir die äußere if-Anweisung, die überprüft, ob $number größer oder gleich 10 ist.

Wenn die äußere Bedingung wahr ist, prüft die verschachtelte if-Anweisung, ob $number kleiner oder gleich 20 ist.

Code:

$number = 15

if ($number -ge 10) {
    if ($number -le 20) {
        Write-Host "The number is between 10 and 20."
    }
}

Ausgabe:

The number is between 10 and 20.

In diesem Code überprüft die äußere if-Anweisung, ob $number größer oder gleich 10 ist. Wenn diese Bedingung erfüllt ist, geht es zur verschachtelten if-Anweisung, die überprüft, ob $number kleiner oder gleich 20 ist.

Nur wenn beide Bedingungen wahr sind, wird der Befehl Write-Host ausgeführt. In der Ausgabe sind beide Bedingungen erfüllt und es wird die Nachricht "Die Zahl liegt zwischen 10 und 20." ausgegeben.

Fazit

Zusammenfassend ist das Kombinieren mehrerer Bedingungen in der if-Anweisung von PowerShell entscheidend für die Erstellung effizienter Skripte. Mit den logischen Operatoren -and, -or, -not und -xor können Sie komplexe bedingte Logik erstellen, um eine Vielzahl von Skript-Herausforderungen zu bewältigen.

Egal, ob es sich um einfache Bedingungen oder verschachtelte if-Anweisungen handelt, PowerShell bietet leistungsstarke Werkzeuge, mit denen Sie informierte Entscheidungen treffen und die richtigen Aktionen in Ihren Skripten ausführen können.

Genießen Sie unsere Tutorials? Abonnieren Sie DelftStack auf YouTube, um uns bei der Erstellung weiterer hochwertiger Videoanleitungen zu unterstützen. Abonnieren
Rohan Timalsina avatar Rohan Timalsina avatar

Rohan is a learner, problem solver, and web developer. He loves to write and share his understanding.

LinkedIn Website

Verwandter Artikel - PowerShell Statement