The if-statement is pretty important if you are creating PowerShell scripts. So I created this post to get some basic information about how to use if-else statements with PowerShell.
PowerShell if-else statement basics
Like many other languages, PowerShell has statements for conditionally executing code in your scripts. One of those statements is the If statement.
First, the syntax with a simple if:
if (condition) {do}
You can also use elseif and else:
if (condition) {do}
elseif (condition) {do}
else {do}
A simple if could look like this:
if ($varibale -eq "1") {
Write-Host "Yes variable is 1"
}
Comparison Operators:
- Equal to:
-eq - Less than:
-lt - Greater than:
-gt - Greater than or Equal to:
-ge - Less than or equal to:
-le - Not equal to:
-ne
You can also check case-sensitive by adding a “c” to the operator. “-eq” would be “-ceq“
Logical Operators:
- Not
-not - Not
! - And
-and - Or
-or
So you can simply add multiple conditions:
if ($varibale -eq "1" -or $varibale -eq "2") {
Write-Host "Varibale is 1 or 2"
}
Conclusion
I hope this provides you with a simple and short overview of how to use if-else statements with PowerShell. If you have any questions feel free to leave a comment. If you want to learn more, check out Microsoft Docs.
Tags: code, conditions, if, if statement, Microsoft, operators, PowerShell, ps, Scripting, Windows, Windows Powershell Last modified: December 22, 2020
Dear Professional,
Neew your assist to run following IF script in powershell
$Dgroup = read-Host type Dl name
$User = read-host type user name
if (Get-Distributiongroup -Identity $Dgroup -ManagedBy $User )
{Write-Host ‘$user is correct owner’}
Else
{Write-Host ‘type correct user name’}
Sweet and simple, I like it, thanks.
However, I came across your blog through searching for a solution to a problem I’m having. Can you shed some light on to why the uncommented bottom if -or statement works while the commented statement does not?
# if ($TempEnvironment -ne “dev” -or $TempEnvironment -ne “acpt” -or $TempEnvironment -ne “prod”) { …code }
The above statement steps into the code regardless.
The below statement works and steps over on a true condition.
if (!($TempEnvironment -like “dev” -or $TempEnvironment -like “acpt” -or $TempEnvironment -like “prod”)) { …code }
Would anyone know why?
A bit late, I know, but there is a typo here, in the first line: “The Iif Statement”.
i want example of using blob container only access one container remaining containers delete..
can u share me the example