Administration and Automation with Windows PowerShell


0/1 Lessons

Course Introduction

• 5min

0 / 2 lessons complete

Getting Started with Windows PowerShell

• 42min

0 / 7 lessons complete

Getting Help and Finding Commands

• 39min

0 / 6 lessons complete

PowerShell Command Syntax

• 33min

0 / 5 lessons complete

PowerShell Objects and Properties

• 35min

0 / 6 lessons complete

The PowerShell Pipeline

• 24min

0 / 2 lessons complete

PowerShell Providers

• 30min

0 / 5 lessons complete

PowerShell Arrays and Variables

• 28min

0 / 4 lessons complete

PowerShell Loops

• 19min

0 / 3 lessons complete

PowerShell Conditional Statements

• 11min

0 / 1 lessons complete

On Premises Lab Setup

• 36min

0 / 8 lessons complete

Basic Domain Administration with Windows PowerShell

• 2hr 27min

0 / 10 lessons complete

Send Emails with PowerShell

• 22min

0 / 2 lessons complete

PowerShell Desired State Configuration (DSC) Basics

• 1hr 48min

0 / 6 lessons complete

Course Conclusion

• 1min

0 / 1 lessons complete

You need to sign up to get access!

Sign up to get full access to this course.

Sign up to access this lesson

Click here to sign up and get access to this lesson!

Saving Progress...

For Loops

In this lecture, we are going to discuss PowerShell For Loops.

The first thing I am going to do is open the PowerShell ISE as an Administrator.

Let’s just define what a PowerShell Loop is. A For Loop allows you to repeat a section of code a specific number of times.

So, you are going to pass a command inside of this For Loop and is going to be repeated a specified number of times like 25 or you can specify 1,000 times or more if you wanted to.

So, the basic format or a For Loop is the following:

for () {


Inside of the Brackets we have the command we want to repeat.

Now, we need to specify the 3 elements that define this For Loop.

  1. Define the variable we want to use to count and its value
  2. What kind of condition we will use when we're counting
  3. Either increase or decrease the variable

If we write these in PowerShell syntax is going to look like this.

for ($i=0;$i -lt 5; $i++) {

echo “Im in a loop”


And If I execute the code in PowerShell ISE it is going to look like the following:

I get the “Im in a loop” five times.

Now, I can utilize the variable $i inside of the loop. Type the following and execute:

for ($i=0;$i -lt 5; $i++) {

echo “Im in a loop: $i”


As you can see, we have the index output that is used as its counting. It starts at 0 and is counting all the way to 4 because 4 is the last number that is less than 5, the last integer number. So we actually get 5 elements but because we are counting from 0 we only count up to 4 for a total of 5 individual elements.

Sometimes counting from 0 can be a little bit confusing. If you want you can change it to start at 1 and end in 6 for 5 elements.

for ($i=1;$i -lt 6; $i++) {

echo “Im in a loop: $i”


But keep in mind that when we are iterating over arrays like we are about to do, arrays start counting with an index of 0. So, generally, counting from 0 is a better practice. So, I just revert that to 0.

Now, let’s go ahead and iterate over an array. Let’s define an array.

$MyArray = @(“Cars”,”Trucks”,”Motorcycles”,”SUVs”)

for ($i=0;$i -lt 4; $i++) {

echo “Element $i value $MyArray[$i]”


But if we run this script you’ll see is not what we are looking for 

So what we need to do is the following:

$MyArray = @(“Cars”,”Trucks”,”Motorcycles”,”SUVs”)

for ($i=0;$i -lt 4; $i++) {

echo (“Element $i value: ” + $MyArray[$i])


Let’s execute this code by hitting F5.

Now we get the elements with their value.

This is one example of how you can use PowerShell arrays with For Loops. This is one of the things I do most of the time. I’ll get an array of users and I’ll iterate over these users and I’ll do some certain commands like create a new user account with this basic information or different things like that.

Now, let’s talk about if we run it wrong with one more value.

$MyArray = @(“Cars”,”Trucks”,”Motorcycles”,”SUVs”)

for ($i=0;$i -lt 5; $i++) {

echo (“Element $i value: ” + $MyArray[$i])


As you can see we have an empty element and then we start running into errors or what about if I counted up to 2

Then we don’t count the entire array. Well, there’s a way to get around that and that is simple to use the following:

$MyArray = @(“Cars”,”Trucks”,”Motorcycles”,”SUVs”)

for ($i=0;$i -lt $MyArray.Count; $i++) {

Sign up to access the rest of this lesson

You must either log in or sign up to access this lesson.

Saving Progress...

0 0 votes
Lesson Rating
Notify of
Inline Feedbacks
View all comments