Using the IF statement
Occasionally, you'll want to check for a specific condition and, if the condition is met, execute some code. You can use the IF statement. The basic syntax of the IF statement is
If (condition 1) { execute code } Elseif (condition 2) { execute code } Else { execute code }
The Where-Object fi lter could be rewritten using a ForEach loop with an IF clause, like this:
$colLog = get-EventLog -list ForEach ($Item in $ColLog) { If ($Item.MaximumKilobytes -gt 15168) { "{0,-30} {1,15}" -f $Item.Log, $Item.MaximumKilobytes } }
The collection of logs is stored in the $colLog variable. The ForEach loop loops through each log in the collection and includes an IF statement. Notice that the IF statement has a condition (enclosed in parentheses), and the statement (or statements) to execute when the condition is true is enclosed in a set of curly braces ({ }).
When using the IF statement, you can include as many statements as desired within the curly braces. When the condition is met, all the statements in the curly braces will be executed.
The following code checks to see the status of the eventlog service and includes the Elseif and Else clauses. If the service is running, it outputs "Running". If the service is not running, it checks to see if it is stopped and, if so, outputs "Stopped". If it's not running or stopped, it'll output a line indicating the service is not running or stopped (indicating it is paused).
$service = Get-Service | Select name, service, status | where {$_.name -like "eventlog"} If ($service.status = "Running") {Write-Host "Running"} Elseif ($service.status = "Stopped" ) {Write-Host "Stopped"} Else {Write-Host "Service not stopped or running"}
In this tutorial:
- Working with the Command Prompt
- Starting and Ending a Command Prompt Session
- Easy ways to invoke administrator Command Prompt sessions
- Starting Command Prompt at a Particular Folder
- Strings with Spaces Need Quotes
- Cmd.exe vs. Command.com
- Commands Are Not Case Sensitive
- Starting Command Prompt and Running a Command
- Cmd.exe and Other Command Prompts
- Using AutoRun to Execute Commands When Command Prompt Starts
- Using Cmds Command-Line Syntax
- Using Commands
- Type /? for help
- Starting Programs
- Open Windows Explorer at the current Command Prompt folder
- Using File-Name and Folder-Name Completion
- Use a different completion character
- Using Wildcards
- Editing the Command Line
- Using Command Symbols
- The Redirection Symbols
- The Pipe Symbol
- The Command Combination Symbols
- Pausing or Canceling Commands
- Simplifying Command Entry with Doskey Macros
- DOSKEY Saves Typing
- System Variables Identify the Environment
- Viewing Environment Variables
- Modifying Environment Variables
- Predefined Environment Variables
- Customizing Command Prompt Windows
- Setting the Window Size and Position
- Setting the Window Size and Position Visually
- Selecting a Font
- Setting Colors
- Setting Other Options
- Copy and paste in the command prompt window
- Navigating from the command prompt
- Printing a list of filenames
- Commands Use Paths
- Identifying Executables
- Modifying the Path to Executables
- Modifying the Path with the GUI
- Changing the Current Path with CD
- Changing the Current Path with Windows Explorer
- Capturing the Output
- A Sampling of Commands
- Dir
- Copy
- XCopy
- SET
- NET USE
- SystemInfo
- DriverQuery
- Echo
- Advanced Shell Commands
- Creating a Batch File
- Scheduling a Batch File
- Creating Scheduled Tasks with a Script
- Using Windows PowerShell and the PowerShell ISE
- Windows PowerShell ISE
- PowerShell Commands
- Verbs and Nouns
- Sending Output to a Text File
- PowerShell Syntax
- Variables Created with a $ Symbol
- Comparison Operators
- Parentheses, Brackets, and Braces
- Running PowerShell Scripts
- PowerShell Execution Policy
- Changing the Execution Policy
- Looping
- Collections
- Creating a PowerShell Script
- Documenting Scripts
- Using PowerShell Commands
- Getting Help on PowerShell
- Using WMI_Cmdlets
- Getting Details on an Object
- Querying Information on Specific Objects
- Terminate Applications with Win32_process
- Formatting Output with the -f Format Operator
- Filtering the Output with the Where-Object Command
- Using the IF statement
- Using the Switch Statement
- Script Reusability