So you want to work in IT? Then you need to know PowerShell. This course will provide you with everything you need to begin down the PowerShell path. From gathering information using PowerShell cmdlets, to working with objects like files and users, you’ll learn real-world skills you can use immediately. Along the way, you'll learn how to find all the answers you need from within the Shell. By the end of the course, you’ll be able to build your own script for gathering information.
Michael is a six-time Microsoft Most Valuable Professional, author, technical trainer, and community leader. Having been in the IT industry since the 90's, his experiences covers the gamut of Microsoft technologies, with his main focus being Windows Server, PowerShell and cloud technologies like AWS and Azure. Along with training, he has a passion for connecting people and building community in the IT Pro space. He is the current president and a founding member of The Krewe User Groups, Inc., a world-wide networking group for IT Pros and Developers.
PowerShell Basics In this module I'm going to cover the basics of Windows PowerShell, really what you need to know to get working with PowerShell and using it in your day to day work. To start this module I'll break down PowerShell commands and discuss the important components you need to know, like command syntax, parameters, aliases, and more. Next, I'll dive into the help components of PowerShell. This is probably one of the most important parts of PowerShell. Microsoft built the help in PowerShell to provide you most of what you need without leaving the shell console. I'll introduce you to get help along with get command and get member. With these three commands, you are on your way to becoming PowerShell proficient. I'll use all three of these to explore the PowerShell console and find answers. No search engine required here. Along the way I'll introduce you to other helpful commands such as get history and get alias, just to name a few. Next, I'll dive into the pipeline in PowerShell. This is really where things to start to happen with PowerShell and where you can get some serious work done. TO really understand how pipelining works you need to understand how PowerShell works with the data it acquires. PowerShell treats all data as objects that can be used to their full potential inside PowerShell. And to finish off the module, I'll teach you how to use formatting commands to better display your data. I've got a lot of information to cover, so let's get to learning the basics of the commands.
Gathering Information with PowerShell I can't get out to the internet. Where are my files? I can't find my spreadsheet. My computer isn't working. If you spent any amount of time working with end users or in a support role, these are very familiar. Solving problems is what a career in IT involves a lot of and the first step to solving a problem is gathering information to find a solution. So that is what I'll cover in this module, gathering information with PowerShell. To start, I'm going to lay out for you a basic troubleshooting methodology that I use every day. I think it'll help lay a foundation for the rest of this module along with help you in your career to be an IT pro. Then I'll dive in with both feet into gathering information in PowerShell. I'll be using a lot of commands with the verb get-, since that is the key verb for gathering information. I'll break down areas that you should know that give you the skills you can start using now. Along the way we'll come across errors. All errors are helpful. I'll show you how to read errors in PowerShell and how to use them to your advantage. So let's get to talking about troubleshooting made simple.
Remoting with PowerShell Knowing how to find information on a local machine is fine, if you have access to that machine. In this day and age much of our troubleshooting and problem resolution happens remotely. So we may never touch an end users computer in person. Because of this change, remote management is a key skill practice in almost every environment. So knowing how to use PowerShell remotely is key to your success. And that is what this module is about, remoting with PowerShell. In this module I'm going to cover the basics of remoting and how it works in PowerShell. With the latest version of Windows Microsoft has made remote management a key feature and PowerShell is no exception. Next, I'll discuss how to enable remoting if it isn't already on the system. By default, Windows clients, like 8, 8. 1, and 10, do not have PowerShell remoting turned on by default. That's a good thing from a security standpoint. I'll show you how to enable this on your client systems and also set up the permissions so you can actually gather data. Then I'll give you a brief introduction to variables and using them in PowerShell. These will become more helpful as you move into repetitive tasks and scripting. Last and definitely not least, I will cover four methods for connecting to remote systems and demonstrate how to perform each method to administer remote systems. So let's dive into PowerShell remoting.
Building a User Inventory Script with PowerShell Depending on your experience in the IT world, you may or may not have heard a lot about automation. It's a pretty big deal. Many of the processes that IT pros performed on a regular basis, such as building computers, creating AD objects, are now automated tasks. To have a future in this industry, you need to be able to automate and build tools to help you do your job better. That is where scripting comes in. If you can run a script that gathers information automatically versus taking 5 minutes to gather it by hand, you've saved yourself a lot of time over the course of a day and that is our topic, building a user inventory script with PowerShell. In this module the hope is to give you a basic understanding of what scripts are and how they run. I'll cover the basics of a parametized script, this is a script that takes parameters just like the cmdlets and functions you've seen in previous modules. I'll introduce you to the PowerShell ISE, the built in Windows tool for building and maintaining scripts, this is where I'll perform most of the work for this module. And the bulk of the module will be building a remote information gathering script. This will use many of the commands that you've learned to this point. I'll show you some new techniques for working with objects and data and it should provide you enough knowledge to begin building your own scripts. So let's talk about scripts.
Next Steps with PowerShell Here we are, the last module. Next Steps with PowerShell. I've covered a lot of material, so you should have a really good foundation of PowerShell skills. So the focus of this final module will be two parts. First I'll be introducing you to a new technology in PowerShell, Desired State Configuration. This is something you want to keep your eyes on and it'll be a huge part of many environments in the near future. And to finish up I'll provide you some tips and resources of where to go next so you can continue your learning about PowerShell. So let's get to Desired State Configuration.