Home > Powershell > PowerShell V3 What’s New?

PowerShell V3 What’s New?

In this article I’m going to list some of the notable features introduced in PowerShell V3.0

  • WorkFlows

PowerShell V3 introduces Windows PowerShell Workflow (PSWF), which helps automate the distribution, orchestration, and completion of multi-computer tasks, freeing users and administrators to focus on higher-level tasks. PSWF leverages Windows Workflow Foundation 4.0 for the declarative framework, but using familiar PowerShell syntax and constructs.

  • Scheduled Jobs

There are new cmdlets in the PSScheduledJob module that allow you to create, enable, and manage scheduled tasks.

  • Module AutoLoading

If you are useing a cmdlet that belongs to another module which has not been loaded yet, this will trigger PowerShell to search PSModulePath and load the first module that contains that cmdlet. You can test this easily with following code.

#Check Current Modules Which are Loaded in Session

#Use cmdlet From CimCmdlets module, which is not loaded yet in current session
Get-CimInstance win32_bios

#Note we have new module loaded called CimCmdlets

#Use cmdlet from SQLPS module, which is not loaded yet in current session
Invoke-Sqlcmd -Query "SELECT GETDATE()" -ServerInstance "YourInstanceName"

#Note new modules loaded SQLPS and SQLASCmdlets
  • WebService Support

PowerShell V3 introduces the Invoke-WebRequest cmdlet, which sends HTTP or HTTPS requests to a web service and returns the object-based content that can easily be manipulated in PowerShell.

  • Robust Sessions

PowerShell V3 supports more robust sessions. Sessions can now be retained amid network interruptions. These sessions will remain open until they time out.

  • Simplified Language Syntax

Writing your Where-Object and Foreach-Object has just become cleaner. Improvements in the language include supporting default parameter values, and simplified syntax.

What you used to write in PowerShell V1 and V2 with curly braces and $_ as follows:

Get-Service | Where-Object { $_.Status -eq 'Running' }

can now be rewritten in V3 as:

Get-Service | Where-Object Status -eq 'Running'
  • Improved Integrated Scripting Environment (ISE)

The new ISE comes with Intellisense, searchable commands in the sidebar, parameter forms, and live syntax checking.

Stay Tuned for More PowerShell Posts.


Categories: Powershell Tags: ,
  1. March 3, 2013 at 9:00 pm

    I do not even understand how I stopped up here, however I thought this publish was once great.
    I do not recognize who you’re however certainly you are going to a well-known blogger in the event you are not already. Cheers!

  2. March 5, 2013 at 10:50 pm

    This is the right website for anybody who wants to find
    out about this topic. You realize a whole lot its almost
    tough to argue with you (not that I really would want to…HaHa).
    You definitely put a brand new spin on a subject that’s been discussed for ages. Wonderful stuff, just excellent!

  3. March 6, 2013 at 9:08 am

    whoah this weblog is fantastic i like reading your posts.
    Keep up the great work! You already know, many individuals are
    hunting around for this information, you can aid
    them greatly.

  1. No trackbacks yet.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.

%d bloggers like this: