Designing Command Line Tool User Experience

Linux Terminal Running Docker

Introduction Software developers, infrastructure & DevOps engineers, and operational IT staff are heavy users of the command line. The benefits of the command line are clear: Commands are / should be readable Commands are repeatable Commands can be shared amongst a team (eg. via source control / chat / etc.) Automation is scalable across many … Read moreDesigning Command Line Tool User Experience

Azure PowerShell Extensions Updates

The Azure PowerShell Extensions module (AzureExt) for Windows PowerShell has seen another interesting update! Let’s take a look at some of the high-level changes: External dependencies have been completely removed The module now supports PowerShell ISE Snippets for Azure Resource Manager (ARM) Resources New command: Remove-AzureRmResourceGroupGui New command: Start-AzureRM Check out Art of Shell’s Microsoft … Read moreAzure PowerShell Extensions Updates

PSA: Upload your PowerShell Modules!

For some time now, the PowerShell Gallery has been available, enabling the upload of PowerShell modules to a centralized repository. This repository provides an easily discoverable location from PowerShell 5.0’s PowerShellGet module. In order to install a PowerShell module in PowerShell 5.0, a user must simply type Install-Module -Name <ModuleName>. The module gallery is still … Read morePSA: Upload your PowerShell Modules!

PowerShell Splatting: Overview

Have you ever been writing a PowerShell script, and looked at how wordy and long the command becomes? If so, you’ll want to familiarize yourself with the concept of PowerShell Splatting. This technique allows you to declare your PowerShell cmdlet parameters in a HashTable (aka. dictionary or key-value pairs), and then “splat” those parameters onto … Read morePowerShell Splatting: Overview

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 with the Get-Command command if … Read moreCompress & Extract ZIP Archives with PowerShell

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 to type in a secure … Read moreWriting Interactive Scripts with PowerShell

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 commands in PowerShell. Create Some … Read moreWorking with CSV Files in PowerShell

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 your PowerShell script & module … Read moreStill using PowerGUI? Get on the Visual Studio train!