Powershell Conditions


Similar to programming language, in powershell, if condition will check the given condition and if it is true,
it will execute the statements within the first set of braces(from '{' to the next '}').
If the condition is not true, it will check the next condition and so on.
If no given condition is true, the 'else' statements are executed.


Here is the list of all comparing operator with examples.


Operator Description
-eq Equal to
-lt Less than
-gt Greater than
-ge Greater than or Eqaul to
-le Less than or equal to
-ne Not equal to

When comparing text strings, by default PowerShell is not case-sensitive.
But here we have another option to force case-sensitivity.
By appending an "i" to the any operator, you can force PowerShell to be "case-insensitive."
Appending a "c" you can force PowerShell to compare as "case-sensitive."



Use of if else. Only if statement is required, everything else is optional. Powershell doent care of spaces, position of "{" and "}" and formatting. There is not limitation on elseif statements.

As with other programming languages, PowerShell is a dynamic scripting language. Script code can be executed based on conditions that exist or occur. For example, a script might prompt for user input and run a block of code based on the data supplied by the user. A process or application may stop running, triggering an action within a script. Conditional Logic allows us to write scripts in a complex environment, it adds the intelligence required to create decision-making scripts.

Launch PowerShell and let's get started...

Comparing Data

We are going to compare data using the following PowerShell Comparison and Logical Operators.

Table 1: PowerShell Comparison Operators:

Operator

Description

-eq

Equal to

-lt

Less than

-gt

Greater than

-ge

Greater than or Eqaul to

-le

Less than or equal to

-ne

Not equal to

I'm not going to join in the great debate over why these operators where chosen, they exists within PowerShell and must be used. Special note: When comparing text strings, by default PowerShell is not case-sensitive. "TOM" and "tom" would compare "equal to" (-eq). However, you can force PowerShell to compare values based on case-sensitivity. By appending an "i" to the operator, you're telling PowerShell to be "case-insensitive." Appending a "c" forces PowerShell to compare as "case-sensitive."

Examples:
Tom -eq TOM. The result is "True"
Tom -ieq TOM. The result is "True"
Tom -ceq TOM. The result is "False"

Table 2: PowerShell Logical Operators:

Operator

Description

-not

Not

!

Not

-and

And

-or

Or

Now that we have the table listings of Operators, let's do some examples to show their use and results.

7 -eq 7<enter>

Result is "True"

7 -ne 7<enter>

Result is "False"

7 -lt 10<enter>

Result is "True"

7 -gt 10<enter>

Result is "False"

"Tom" -eq "tOm"<enter>

Result is "True"

"Tom" -ceq "tOm"<enter>

Result is "False"