Prerequisites
- Previous Windows Server and Windows Client management knowledge and hands on experience.
- Experience installing and configuring Windows Server into existing enterprise environments, or as standalone installations.
- Knowledge and experience of network adapter configuration, basic Active Directory user administration, and basic disk configuration.
- Knowledge and hands on experience specifically with Windows Server 2012/Windows Server 2012 R2 and Windows 8/Windows 8.1 would be of benefit but is not essential.
Syllabus
Module 1: Getting Started with Windows PowerShell
This module introduces students to Windows PowerShell, its purpose and history. The module will also cover the basics of using the shell, including the help system, command syntax, command discovery explaining the use of the two built-in host applications.
Lessons
- Overview and Background
- Finding and Learning Commands
- Running Commands
Lab : Configuring Windows PowerShell•Configure the Windows PowerShell Console Application
- Configure the Windows PowerShell ISE Application
Lab : Finding and Running Basic Commands•Finding Commands
- Finding and Running Commands
- Using “About” Files
After completing this module, students will be able to:
- Open and configure Windows PowerShell
- Discover, learn, and run Windows PowerShell commands
- Run commands by using correct command and parameter syntax
Module 2: Working with the Pipeline
This module covers the Windows PowerShell pipeline along with a number of additional techniques and commands, including customizing command output, exporting and converting data, sorting objects, filtering objects, and enumerating objects allowing for the overall retrieval, manipulation and displaying of data.
Lessons
- Understanding the Pipeline
- Selecting, Sorting, and Measuring Objects
- Converting, Exporting, and Importing Objects
- Filtering Objects Out of the Pipeline
- Enumerating Objects in the Pipeline
Lab : Using the Pipeline•Selecting and Sorting Data
Lab : Converting, Exporting, and Importing Objects•Converting Objects
- Importing and Exporting Objects
Lab : Filtering Objects•Filtering Objects
Lab : Enumerating Objects•Enumerating Objects
After completing this module, students will be able to:
- Describe the purpose of the Windows PowerShell pipeline
- Manipulate objects in the pipeline
- Convert, export, and import objects
- Filter objects out of the pipeline
- Enumerate objects in the pipeline
Module 3: Understanding How the Pipeline Works
This module explains the underlying details of how Windows PowerShell passes objects from command to command within the pipeline. Having seen it in action in the previous module will now get to see some of the theory under the hood. The emphasis will be on two specific techniques used by the shell and students will learn to explain the pipeline operation, predict command behavior and allows them construct more useful, predictable commands.
Lessons
- Passing Data in the Pipeline By Value
- Passing Data in the Pipeline By Property Name
Lab : Working with Pipeline Parameter Binding•Predicting Pipeline Behavior
After completing this module, students will be able to:
- Pass data by using the ByValue technique
- Pass data by using the ByPropertyName technique
Module 4: Using PSProviders and PSDrives
This module explains the purpose and use of Windows PowerShell PSProviders and PSDrives, and shows students how to use these useful components for administrative tasks. Students will also learn to use the -item* commands to manipulate items within a PSDrive.
Lessons
- Using PSProviders
- Using PSDrives
Lab : Using PSProviders and PSDrives•Create a New Folder
- Create a New PSDrive
- Create a New Registry Key
- Create a New Registry Setting
- Modify a WS-Management Setting
After completing this module, students will be able to:
- Explain the purpose and use of PSProviders
- Explain the purpose and use of PSDrives
Module 5: Formatting Output
This module demonstrates how to format command output and how to create custom output elements.
Lessons
- Using Basic Formatting
- Using Advanced Formatting
- Redirecting Formatted Output
Lab : Formatting Output•Formatting Command Output
- Reproducing Specified Output
After completing this module, students will be able to:
- Format command output by using basic formatting commands
- Format command output by using advanced formatting options
- Redirect formatted output
Module 6: Querying Management Information by Using WMI and CIM
This module explains Windows Management Instrumentation (WMI) and Common Information Model (CIM), and shows students how to retrieve and in some cases modify management information about local and remote computers.
Lessons
- Understanding WMI and CIM
- Querying Data with WMI and CIM
- Making Changes by Using WMI and CIM
Lab : Working with WMI and CIM•Querying Information by Using WMI
- Querying Information by Using CIM
- Invoking Methods
After completing this module, students will be able to:
- Explain the differences between WMI and CIM
- Query management information by using WMI and CIM
- Invoke methods by using WMI and CIM
Module 7: Preparing for Scripting
This module prepares students for writing scripts with Windows PowerShell, covering the Windows PowerShell security model and the use of variables.
Lessons
- Using Variables
- Scripting Security
Lab : Working with Security in Windows PowerShell•Configure Security
After completing this module, students will be able to:
- Create, use, and manage variables
- Configure shell scripting security
Module 8: Moving From a Command to Script to Module
This module shows students how to take a command that runs well in the console and turn it into a parameterized, reusable script, and how to evolve that script into a standalone script module. Students will learn the foundations needed to create their own reusable tools.
Lessons
- Moving From Command to Script
- Moving From Script to Function to Module
- Implementing Basic Error Handling
- Using Basic Scripting Constructs
- Exploring Other Scripting Features
Lab : Moving From Command to Script•Test the Command
- Parameterize Changing Values
- Add Verbose Output
- Add Comment-Based Help
Lab : Moving From Script to Function to Module•Convert the Script to a Function
- Save the Script as a Script Module
- Add Debugging Breakpoints
Lab : Implementing Basic Error Handling•Add Error Handling to a Function
- Add Error Handling to a New Function
Lab : Creating an Advanced Function•Test an Existing Command
- Create a Parameterized Function
- Handle Multiple Targets
- •Add Error Handling
After completing this module, students will be able to:
- •Move from Command to Script
- •Move from Script to Function to Module
- •Implement basic error handling
- •Implement basic scripting constructs
- •Explain additional advanced Windows PowerShell scripting features
Module 9: Administering Remote Computers
This module explains Windows PowerShell remoting, and shows students how to configure and use remoting to manage multiple remote computers.
Lessons
- Using Basic Remoting
- Using Advanced Remoting Techniques
- Using Remoting Sessions
Lab : Using Basic Remoting•Enable Remoting on the Local Computer
- Performing One-to-One Remoting
- Performing One-to-Many Remoting
Lab : Using Remoting Sessions•Using Implicit Remoting
After completing this module, students will be able to:
- Describe remoting architecture and security, manually enable remoting, and use remoting for one-to-one and one-to-many connections
- Pass local variables to remote computers
- Create and manage persistent remoting sessions, and use implicit remoting
Module 10: Putting it All Together
This module offers students an opportunity to use everything they have learned so far. Students will discover, learn, and run commands that perform a complex, real-world administrative task.
Lessons
- •Provisioning a New Server Core Instance
Lab : Provisioning a New Server Core Installation•Create a Parameterized Script
- Get the Dynamic IP Address of the New Server Core Computer
- Create a DHCP Reservation for the Server Core Instance
- Modify the Local TrustedHosts List
- Add a Role to the Server Core Instance
- Add the Server Core Instance to the Domain
- Test the Completed Script
After completing this module, students will be able to:
- Plan your Windows PowerShell Script
- Configure Server Core computers using Windows PowerShell
Module 11: Using Background Jobs and Scheduled Jobs
In this module students will learn to create and manage background jobs and scheduled jobs.
Lessons
- Using Background Jobs
- Using Scheduled Jobs
Lab : Using Background Jobs
- Starting Jobs
- Managing Jobs
Lab : Using Scheduled Jobs•Creating a Scheduled Job
After completing this module, students will be able to:
- Create and manage Background Jobs
- Create and manage Scheduled Jobs
Module 12: Using Profiles and Advanced PowerShell Techniques
This module covers a variety of additional advanced Windows PowerShell features and techniques including additional comparison operators, use of alternate credentials, creation of profile scripts, manipulation of strings and date objects.
Lessons
- Using Advanced PowerShell Techniques
- Creating Profile Scripts
- Working With Alternative Credentials
Lab : Practicing Advanced Techniques•Using Advanced Techniques
- Using Alternative Credentials
- Create a Profile Script
After completing this module, students will be able to:
- Manipulate data and objects by using advanced techniques and operators
- Create and manage profile scripts
- Connect to remote computers by using alternative credentials