Administration and Automation with Windows PowerShell
Course Introduction • 5min
0 / 2 lessons complete
Getting Started with Windows PowerShell • 42min
0 / 7 lessons complete
The Basics of PowerShell
Video | 7 min
Installing and Updating PowerShell
Video | 7 min
The Text Based Console Part 1- An Overview
Video | 7 min
Text Based Console Part 2 - An Overview
Video | 5 min
The ISE (Intelligent Scripting Environment) Part 1
Video | 5 min
The ISE (Intelligent Scripting Environment) Part 2
Video | 5 min
Use the OGV Command to Easily View console data!
Video | 6 min
Getting Help and Finding Commands • 39min
0 / 6 lessons complete
Getting Help and Finding Commands Part 1
Video | 7 min
Getting Help and Finding Commands Part 2
Video | 3 min
Getting Help and Finding Commands Part 3
Video | 4 min
Help System LAB Questions
Video | 6 min
Help System Lab Answers 1-4
Video | 9 min
Help System Lab Answers 5-9
Video | 10 min
PowerShell Command Syntax • 33min
0 / 5 lessons complete
Command Syntax Part 1
Video | 8 min
Command Syntax Part 2
Video | 8 min
Command Syntax Part 3
Video | 5 min
Command Syntax Lab Questions
Video | 4 min
Command Syntax Lab Answers
Video | 8 min
PowerShell Objects and Properties • 35min
0 / 6 lessons complete
Objects, Properties and Methods Part 1
Video | 3 min
Objects, Properties and Methods Part 2
Video | 8 min
Objects, Properties and Methods Part 3
Video | 7 min
Questions 1-9 for Objects, Properties and Methods
Video | 2 min
Answers to Questions 1-7 O-P-M
Video | 11 min
Answers to Questions 8,9 O-P-M
Video | 4 min
The PowerShell Pipeline • 24min
0 / 2 lessons complete
PowerShell Providers • 30min
0 / 5 lessons complete
What are PowerShell Providers
Video | 3 min
Using PS Drive
Video | 6 min
PowerShell Provider CMDlets -1
Video | 12 min
PowerShell Providers CMDlets -2
Video | 7 min
Student Assignments
Text | 2 min
PowerShell Arrays and Variables • 28min
0 / 4 lessons complete
PowerShell Variables
Video | 9 min
PowerShell Arrays
Video | 12 min
PowerShell Variables Challenge
Video | 2 min
PowerShell Variables Solution
Video | 5 min
PowerShell Loops • 19min
0 / 3 lessons complete
PowerShell Conditional Statements • 11min
0 / 1 lessons complete
On Premises Lab Setup • 36min
0 / 8 lessons complete
Should You Watch This Section?
Video | 2 min
Downloading and Installing VirtualBox
Video | 2 min
Downloading Windows Server 2019
Video | 3 min
Creating Your Virtual Network
Video | 2 min
Creating Your Virtual Machines
Video | 7 min
Installing VirtualBox Guest Additions
Video | 2 min
Installing Windows Server
Video | 8 min
Installing the Active Directory Domain Services Role
Video | 10 min
Basic Domain Administration with Windows PowerShell • 2hr 27min
0 / 10 lessons complete
Configuring PowerShell Execution Policy with Group Policy
Video | 13 min
Installing Windows Server Roles and Features with Powershell
Video | 6 min
Running Powershell Scripts as Scheduled Tasks
Video | 8 min
Creating Organizational Units with Powershell
Video | 11 min
Creating and Managing Active Directory User Accounts with PowerShell
Video | 19 min
Move all AD Users in a Group to a Specific Organizational Unit
Video | 7 min
Generate a list of AD Users and their OU
Video | 5 min
PowerShell Splatting
Video | 5 min
Bulk Install Windows MSU Files Automatically with PowerShell
Video | 13 min
Lab: Domain Administration with Windows PowerShell
Lab | 60 min
Send Emails with PowerShell • 22min
0 / 2 lessons complete
Send Emails from Gmail with PowerShell
Video | 9 min
Create Password Expiration Notification Script
Video | 13 min
PowerShell Desired State Configuration (DSC) Basics • 1hr 48min
0 / 6 lessons complete
DSC Overview
Video | 9 min
Enabling PSRemoting with Group Policy
Video | 9 min
The DSC Resource Kit
Video | 7 min
Configuring The Local Config Manager for DSC Push
Free lesson
Video | 14 min
Uninstalling Windows Features with DSC
Video | 9 min
Lab: Desired State Configuration (DSC)
Lab | 60 min
Course Conclusion • 1min
0 / 1 lessons complete
Sign up to access this lesson
Click here to sign up and get access to this lesson!

Saving Progress...
In this lecture we’ll explore the pipeline, introduce some new commands and demonstrate how we can use the pipeline to complete everyday tasks. We’ll also take a look at something new called parameter binding.
We’ll talk about:
- What-if – With what-if, you can test your command before you try it.
- Send output to a file using out-file. get-help *out-* Using out-file
- Finally, we’ll talk about how PowerShell sends commands through the pipeline.
Let’s say we want to delete some files, but because we’re using wildcards, we don’t want to delete the wrong files. We can take the cautious approach and use the -whatif command.
Let’s open explorer, go to our C drive
I have created a folder named Company with a subfolder named HR. I have created several txt files within each folder.
- The goal is to delete all the files in HR and Company without deleting any of the other files or folders on my c drive.
First, I’ll type the command then explain it
- Type Get-ChildItem C:\Company\*.txt -Recurse | Remove-Item -WhatIf
Get-childitem – Is like using dir command
I created two folders C:\Company and C:\Company\HR
*.txt – The files to look for
-Recurse – tells PowerShell to Search Subdirectories, here’s our pipe operator.
Remove-item – Equivalent to delete
-whatif – Test but won’t complete our command. Press Return.
Here we see whatif performing a test operation on these targets.
Now let’s type the same command but this time we’ll use the -confirm parameter
- Get-ChildItem C:\Company\*.txt -Recurse | Remove-Item -confirm
PowerShell will ask you to confirm the deletion of each text file.
Or we could go ahead and say Yes to all, and it will delete all the files. And we see that all our text files are gone.
Now let’s check out the out-file command.
- We’re going to write the contents of our application log out to a file named app.txt
- Type get-eventlog -logname application | out-file c:\app.txt. press return
Now let’s go to windows explorer and lets open the file in notepad. And as you can see there is the contents of the application log.
What command in PowerShell can we use to look at the contents of the application log file.
- Type get-help *content* Press return, and we see that there is a get-content command
- Type get-content -path c:\app.txt press return. And our application log is displayed on the screen.
- Take a look at the headings, nice and neat.
Let’s go a little deeper into the pipeline. First let’s review
- The pipeline is used for connecting commands together
- Using the pipeline, we can pass the output of one command to the input of another command.
- The pipeline operator symbol can be found on most keyboards by holding down the shift key and pressing the key right above the enter key.
So how does PowerShell know which commands will work together on the pipeline?
This time we’ll use get-service.
- Go ahead and type get-service -name bits | Stop-service press return
- BITS is the Background intelligent Transfer service. It is used to transfer files between computers.
- Get-service is command #1
- Stop-service is Command #2
So, what actually happens when I run this command.
Get-service (1st command) is producing an object and then that object will go across the pipeline. Stop-service which is the 2nd command will connect to that object by mapping it to a parameter.
So how does PowerShell know what parameters to choose?
Sign up to access the rest of this lesson
You must either log in or sign up to access this lesson.

Saving Progress...