PowerShell for Developers

Learn to leverage the scripting capabilities of Powershell and become a real power user.

Overview

This course is a fast paced introduction to PowerShell for experienced C# developers. The course concentrates on how PowerShell can be used to automate day to day developer tasks, as opposed to focusing on the needs of system administrators.

Outline

Introduction to PowerShell

  • The need for a scripting language in the .NET Platform
  • High level characteristics of the PowerShell language
  • Comparing PowerShell to Korn Scripting, Ruby and Python
  • Exploring PowerShell commands using the command prompt
  • Writing and debugging scripts using the PowerShell ISE

Working with PowerShell Commands

  • Understanding what a Cmdlet is
  • Getting help about the built-in Cmdlets
  • Sorting, filtering and iterating over output
  • Arranging Cmdlets into pipelines and redirecting output
  • Displaying the output of pipelines as CVS, XML and HTML
  • Running commands in parallel and as background jobs

Using the Standard PowerShell Commands

  • Navigating and modifying the filesystem
  • Working with items in the system event log
  • Finding and working with process objects
  • Sending and retrieving data from servers
  • Loading and executing code from assemblies
  • Interacting with the MSBuild automation tool

Programming with PowerShell

  • Declaring scalar variables, arrays and tables
  • Making choices and iterating externally via loops
  • Iterating internally using script blocks / lambdas
  • Loading and working with types in .NET libraries
  • Disregarding the return values from method calls
  • Handling errors and exceptions from Cmdlets and code
  • Declaring functions and filters in PowerShell
  • Packaging PowerShell scripts as modules for reuse

Advanced Tasks in PowerShell

  • Creating and using your own PowerShell commands
  • Declaring your own complex types in PowerShell scripts
  • Using PowerShell for prototyping and testing applications
  • Working with Windows Management Instrumentation (WMI)
  • Using Powershell on Linux

Requirements

Delegates should have several years .NET development experience (ideally in C#) and be familiar with the core concepts and terminology of .NET (IL, Assemblies, AppDomains, the GAC etc…).

Sign up and stay in the loop

Be the first to know about upcoming workshops, courses, talks and events

Learn more

A great introduction to powershell with some extra golden nuggets of .NET development knowledge thrown in along the way.