About | Links | Scripts
Sharing linux/windows scripts and tips

First look at powershell 6.1.0

September 15, 2018 — Jesse Harris

Powershell 6.1.0 dropped yesterday. Here is my quick look.

New Commands

Get-Command | Measure-Object on each version:

Version 6.0.4 had 316 commands, while 6.1.0 has 323 commands. Comparing a list of commands:

On 6.0.4: gcm | select -exp name > 6.0.4.txt and the same on 6.1.0, then to compare:

    compare-object (gc ./6.0.4.txt) (gc ./6.1.0.txt)

    InputObject             SideIndicator
    -----------             -------------
    ConvertFrom-Markdown    =>
    Get-ExperimentalFeature =>
    Get-MarkdownOption      =>
    Set-MarkdownOption      =>
    Show-Markdown           =>
    Start-ThreadJob         =>
    Test-Connection         =>
    Test-Json               =>
    more                    <=

Firstly, yay for Test-Connection. I had to reimplement that one by parsing results from ping previously to make some of my windows modules work on PS core. Start-ThreadJob looks interesting and I can't wait to see what the Markdown cmdlets do.

I'll look more at these new commands later, but while I was running Get-Command, I thought I'd see if there were any generic performance improvements in 6.1.0 release.

On 6.0.4:

    PS /home/harrisj> measure-command {gcm | select -exp name}                      
    Days              : 0
    Hours             : 0
    Minutes           : 0
    Seconds           : 0
    Milliseconds      : 718
    Ticks             : 7185832
    TotalDays         : 8.31693518518518E-06
    TotalHours        : 0.000199606444444444
    TotalMinutes      : 0.0119763866666667
    TotalSeconds      : 0.7185832
    TotalMilliseconds : 718.5832

On 6.1.0:

    PS /home/harrisj> measure-command {get-command | select -exp name }

    Days              : 0
    Hours             : 0
    Minutes           : 0
    Seconds           : 0
    Milliseconds      : 455
    Ticks             : 4558407
    TotalDays         : 5.27593402777778E-06
    TotalHours        : 0.000126622416666667
    TotalMinutes      : 0.007597345
    TotalSeconds      : 0.4558407
    TotalMilliseconds : 455.8407

A modest speed boost. Definitely appreciated on the old RPI 2 that hosts this site.

Kicking the tires on new command


I gave this a quick try and it colour highlighted and shows a preview of the markdown in the terminal window. It also had a -UseBrowser parameter which writes a tmp html and open's it in the browser. Pretty neat.


What you'd expect, this converts a Markdown file to html to stdout or to a file if specified. Who knows, I might see if I can get this site to work using this implementation of Markdown. Currently I'm using the Markdown.pl from Gruber.


Does nothing on the RPI and MacOS. Will have to spin this up on Windows and update this article


Just ran this over a json file I use in one of my projects:

Test-Json -Json (gc ./Template.json -raw)


This might take a bit more time to find the true value of it, but I quickly tried my simultaneous ping test with this and it spawned a number of PSJobs with a PSJobTypeName of ThreadJob.

Closing thouhghts

Thats it for now. I've heard this release focused alot on bringing Windows cmdlets back for Windows, so not-so-much in this one for the *nixes. Still an improvement either way

Tags: powershell