Compress & Extract ZIP Archives with PowerShell

Introduction PowerShell 5.0 includes a module called Microsoft.PowerShell.Archive, which enables you to compress and extract ZIP files from the command line, or inside your PowerShell scripts. If we use the core PowerShell Get-Command, we can dynamically discover the commands that are available inside this module. You should already be familiar …

Continue reading

Writing Interactive Scripts with PowerShell

If you’re authoring PowerShell scripts that are intended to be interactive, there are a couple of very easy ways to ask your users for input. Typically, user input falls into a couple categories: free-form text input, or a list of pre-defined values. We also might need to prompt the user …

Continue reading

Working with CSV Files in PowerShell

If you’re working with data from PowerShell, you have most likely come across the CSV (Comma Separate Values) format. These files are very easy to work with in PowerShell, thanks to the CSV cmdlets. If this is your first time working with CSV files, it’s easy to discover the CSV-related …

Continue reading

Still using PowerGUI? Get on the Visual Studio train!

Are you still using the old Quest / Dell PowerGUI tool to author your PowerShell scripts and modules? If so, you may want to consider getting off the PowerGUI train, and hopping onto the Visual Studio 2015 or PowerShell Integrated Scripting Editor (ISE) train! By doing so, you will improve …

Continue reading

PowerShell ISE: Jump to Column Feature

If you’re a developer, or even just a frequent user of a text editor, you’re probably familiar with the “Jump to Line” feature of most text editing software. The Microsoft Windows PowerShell Integrated Scripting Editor (ISE) offers such a feature, which is commonly mapped to the CTRL + G keyboard …

Continue reading

Import-DscResource Warning Message in WMF 5.0 April 2015 Preview

The latest version of the Microsoft Windows Management Framework (WMF) Core 5.0 package has some improvements to the PowerShell and Desired State Configuration (DSC) experience. One of those improvements is a warning message that will appear, if you do not use the Import-DscResource dynamic keyword to import the PSDesiredStateConfiguration module. …

Continue reading

PowerShell: Resizing Azure Virtual Machines

Background Did you know that you can scale virtual machines in Microsoft Azure? If you’ve been working with the cloud, you’ve most likely heard about that capability before, but did you know that you can automate this function using PowerShell? It’s true! You can streamline many different operations in Microsoft …

Continue reading

PowerShell: Retrieve Azure Storage Blob Containers Asynchronously

Background When you’re working with the Microsoft Azure platform, as a developer or an IT pro, you will almost certainly leverage the Microsoft Azure Storage service. The top-level object in the Azure Storage service is called a “Storage Account.” Each Storage Account can contain the following types of storage objects: …

Continue reading

Clean up unused Azure VHD Disks

Introduction The Microsoft Azure platform maintains a list of VHD blobs that have been registered as “disks” in your Azure subscription. You can view a list of registered “disks” by opening the Azure Portal, going to the Virtual Machines node, and selecting the Disks link. Each Azure disk has a …

Continue reading

Implementing a .NET Class in PowerShell v5

Introduction You might have heard that PowerShell version 5.0 has introduced support for building .NET classes. Indeed, this is a powerful, new capability that has not previously existed in native PowerShell syntax. Before the new class-building syntax existed, if you wanted to build custom objects in PowerShell, you generally would …

Continue reading