Level 1 – Learn Windows PowerShell Scripting

Learn Windows PowerShell Scripting

Level – 1 Course

Instructor Information

Instructor

Email

Instructional Method

GOVARDHAN GUNNALA

trainer.gunnalag@gmail.com

Classroom or Virtual-Online

 

Target Audience

Audience

Roles

Benefits

Anyone who want to learn Windows PowerShell Scripting.

New or Experienced Windows Server Administrators;

Windows IT Automation Specialists;   

Gains basic knowledge on PowerShell Scripting for IT Automation and Remote Administration.

 

 

Pre-requisites

Description

To gain effective knowledge from this course, participants are required to have below pre-requisite knowledge

·         No prior experience with any version of Windows PowerShell, or any scripting language, is required

·         Basic Knowledge of Windows components like File Systems, Registry, WMI, Services, etc.,

·         Experience with Windows networking technologies and implementation would be helpful

·         Experience with Windows administration, maintenance, and troubleshooting would be helpful

Course Information

Description

This course provides students with the strong knowledge of Windows PowerShell Scripting and its execution.  This course provides students the skills to understand and build task based PowerShell scripts.  In addition, students learn how to analyze any PowerShell script, its runtime environment and debugging.  In keeping with that goal, this course will not focus on any additional technologies or products, although Windows Operating System, which is the common platform for various technologies and products.

Expectations and Goals

Upon completion of this course, participants will acquire below skills: 

·         Understand what Scripting is and how it’s used for IT automation

·         Learn PowerShell overview including its evolution and features

·         Create and execute PowerShell Script

·         Build Scripts involving basic scripting constructs in PowerShell

·         Understand Object Oriented programming nature of PowerShell

·         Work with variables, arrays, and hash tables.

·         Work with conditional and control flow statements

·         Understand Windows PowerShell pipeline and techniques.

·         Manage File System, Registry, Processes, Services, and Event logs, etc.,

·         Query system information by using WMI.

·         Write scripts in Windows PowerShell.

·         Administer remote computers.

 

Duration

This course will be delivered in both options, in accordance to the participant’s flexibility:

·         For Corporates:     8 Hours x 5 Days                      = 40 Hours

·         For Institutions:  1.5 Hours x 4 Weeks (Mon – sat)  = 36 Hours

Course Contents

Modules

In this course, below modules are covered:

 

·         Module 1: Introduction to PowerShell

o    Scripting Vs. Programming

o    What is PowerShell (PS)?

o    Why PowerShell?

o    The Father of PowerShell

o    PowerShell (vs) *nix Shells

o    PowerShell Architecture

o    Evolution of PowerShell – Versions and Features

§   Windows PowerShell 1.0

§   Windows PowerShell 2.0

§   Windows PowerShell 3.0

§   Windows PowerShell 4.0

§   Windows PowerShell 5.0

§   Windows PowerShell 5.1

o    Mixed-Version Environments

 

·         Module 2: Installing and Configuring PowerShell

o    Installing PowerShell

o    Finding PowerShell version

o    Upgrading PowerShell

o    Configuring PowerShell

o    What PowerShell Includes?

o    Configuring the console

o    Configuring the ISE

 

·         Module 3: Getting Started with PowerShell

o    PowerShell CmdLets

o    PowerShell CmdLets Syntax

o    Tab Completion

o    What are Aliases?

o    Using Aliases

o    Single Line Comments

o    Multi Line Comments

o    CmdLet: Update-Help

o    CmdLet: Get-Help

o    CmdLet: Get-Command

o    CmdLet: Get-Member

 

·         Module 4: PowerShell Script Execution

o    Creating Script Files

o    PowerShell File Extension

o    PowerShell Security – Execution Policy

o    Arguments

o    Launching PS V 2.0

o    Executing code at Command Line

o    Using ConsoleFiles

 

·         Module 5: PowerShell Objects

o    Understanding Objects

o    Exploring Objects

o    Creating Objects

o    Objects: Properties

o    Objects: Methods and Method Signature

o    Comparing Objects

 

·         Module 6: PowerShell Variables

o    PowerShell Variables

o    Variable Naming Rules

o    Assigning a value to a variable

o    PowerShell Special Variables

o    Environment Variables

o    PowerShell Datatypes

o    Strong Typed Datatypes

o    Common Datatypes

 

·         Module 7: PowerShell Data Structures

o    What are Arrays?

o    Working with Arrays

o    Finding Array length

o    Array to Store Command Output

o    Processing Array elements in pipeline

o    What are Hash Tables?

o    Creating Hash Tables

o    Reading Hash Tables

o    Updating Hash Tables

 

·         Module 8: PowerShell Conditional Constructs

o    PowerShell Conditional Operators

o    PowerShell Comparison Operators

o    PowerShell Logical Operators

o    Conditional Operator : IF

o    Conditional Operator : Where

o    Conditional Operator : Switch

 

·         Module 9: PowerShell Loops

o    What are Loops?

o    While and Do While

o    Do Until

o    For Loop

o    Nested For Loops

o    ForEach Loop

o    Foreach-Object

o    Switch as Loop

o    Continue: Skipping Loop Cycles

 

·         Module 10: PowerShell Functions and Pipeline

o    Understanding Functions

o    Creating Functions

o    Defining Parameters

o    Calling Functions

o    Dot Sourcing

o    Understanding Pipeline

o    Passing Data By Value

o    Passing Data By Property Name

o    Using Pipeline

o    Pipeline as a Loop

 

·         Module 11: Reading Input and Routing Output

o    IO: Reading Input and Routing Output

o    Reading from Console

o    Reading from Files

o    Working with XML

o    Reading CSV

o    Writing to Console: Write-Output

o    Writing to Console: Write-Host

o    Writing to EventLog

o    Writing to Files

o    Writing to Interactive Grid

 

·         Module 12: Exceptions and Error Handling

o    Exception vs. Errors

o    Suppressing Errors

o    Using Try and Catch

o    Throwing Custom Exception Messages

o    Using Traps

 

·         Module 13: Regular Expressions (RegEx)

o    Understanding Regular Expressions

o    RegEx: String Match Operators

o    String Object Methods

o    RegEx: Defining Pattern

o    RegEx: Matching Pattern

o    Formatting Command Outputs

 

·         Module 14: PowerShell Providers and PSDrives

o    What is PowerShell Provider?

o    Using Providers

o    What is PSDrive?

o    Using PSDrives

 

·         Module 15: Working with Windows Registry

o    Creating Registry

o    Reading Registry

o    Updating Registry

o    Deleting Registry

 

·         Module 16: Working with WMI

o    Understanding WMI

o    Exploring WMI

o    Using WMI

o    Filtering WMI results

o    Direct WMI Object Access

o    Changing System Configuration using WMI

o    Invoking WMI Methods

 

·         Module 17: Working with XML

o    Reading XML Files

o    Parsing Nodes

o    Creating sample XML configuration file

o    Parsing the sample XML configuration file

 

·         Module 18: PowerShell Productivity Cmdlets

o    Manage Processes

§   Viewing Process Details

§   Filtering Processes by Property

§   Stopping Processes

§   Launching Processes  

o    Manage Services

§   Viewing Services

§   Starting Services

§   Stopping Services

o    Manage EventLog

§   Retrieving events from Eventlog

 

·         Module 19: PowerShell Profile Scripts

o    Understanding PowerShell Profiles

o    What is Profile Script?

o    Profile Script Location

 

·         Module 20: PowerShell Remote Execution

o    Understanding PowerShell Remoting

o    PowerShell Remoting Architecture

o    Benefits of PowerShell Remoting

o    Enabling PowerShell Remoting

o    Enabling PS Remoting in Workgroups

o    Disabling PowerShell Remoting

o    Starting a Remote Session

 

·         Module 21: PowerShell Workflows

o    Understanding Workflows

o    Benefits of using Workflows

o    Creating Workflows

o    Creating Inlinescript Workflows

o    Creating Parallel Workflows

o    Creating Sequence Workflows