Home ยป PowerShell For Loops

PowerShell For Loops

The for loop in PowerShell follows a structure similar to many other programming languages. It consists of three main components:

  1. Initialization: Setting up initial conditions, typically initializing a counter variable.
  2. Condition: Specifying the condition for loop continuation. The loop executes as long as this condition evaluates to ‘true‘.
  3. Iteration: Modifying loop variables or conditions during each iteration, often incrementing or decrementing a counter.

Syntax of the For Loop

The syntax of the ‘for’ loop in PowerShell is as follows.

for ($initialization;$condition;$iteration) {
        # Execute code during each iteration

Let’s understand the PowerShell for loop with some practical examples.

Using PowerShell For loop to Iterate over Arrays

$languages = @("Python","PowerShell","Rust","Java")

for($counter = 0; $counter -lt $languages.Length; $counter++) {

     Write-Host "Element $($counter + 1): $($languages[$counter])"


In the above example, the $languages stores the elements of type array. The for loop in PowerShell iterates over the $languages.Length and prints the element name in the $languages array one by one on the console.

Element 1: Python
Element 2: PowerShell
Element 3: Rust
Element 4: Java

Perform Batch Operations Using For Loop in PowerShell

for ($i = 1; $i -le 10; $i++) {
    New-Item -ItemType File -Name "File$i.txt"

In the above PowerShell script, the for loop iterates till the condition $i less than 10 is ‘true’ and create a new item using New-Item cmdlet.

Best Practices

To maximize the effectiveness of ‘for’ loops in PowerShell scripts, consider the following best practices.

  1. Clear Initialization: Initialize loop variables or conditions explicitly to avoid confusion.
  2. Optimize Condition: Keep the loop condition simple and efficient to improve script performance.
  3. Update Iteration: Increment or decrement loop variables within the iteration block to control the loop progression effectively.
  4. Avoid Infinite Loops: Ensure the loop condition eventually evaluates to ‘false’ to prevent infinite loops.

Cool Tip: How to use foreach loop in PowerShell!


I hope the above article on how to use for loop in PowerShell is helpful to you.

You can find more topics about Active Directory tools and PowerShell basics on the ActiveDirectoryTools home page.