Articles

PowerShell articles, tutorials, and guides from community experts.

Don Jones
PowerShell for Admins

The 2013 Winter Scripting Camp

We’ll be announcing Winter Scripting Camp the first week of February. This is a special invite-only event that will be open to subscribers of the PowerShell.org TechLetter. It will work just like the Scripting Games, but will feature only a couple of events and will not include any prizes. We …

Richard Siddaway

Piping between functions

A question came up about piping between advanced functions. The input to the second function might be an array. To illustrate how this works imagine a function that gets disk information ““ or better still use this one. `function get-mydisk { [ CmdletBinding ( ) ] param ( [string] …

Richard Siddaway

Starting virtual machines for WSUS

My test environment usually has a dozen or so machines at any one time. Some of these are short lived and used for a particular piece of testing ““ others are kept for years. I decided that I wanted to keep up to date on the patching of these virtual machines so installed WSUS on a Windows …

Richard Siddaway

Account SIDs revisited

I realised there is an easier way to get the data `function get-SID { param ( [string] $computername = $env:COMPUTERNAME ) Get-WmiObject -Class Win32_AccountSID -ComputerName $computername | foreach { $exp = “[wmi]'” $( $_ . Element ) “'” Invoke-Expression -Command $exp | …

Richard Siddaway

Passing function names

A question asked about passing a function name into another function which then called the function. It sounds worse than it is. if you need to pass the name of a command and then call it try using invoke-expression `function ffour { Get-Random } function fthree { Get-Date } function ftwo { param ( …

Richard Siddaway

Account SIDs

A question on the forum asked about finding the accounts and SIDs on the local machine. `function get-SID { param ( [string] $computername = $env:COMPUTERNAME ) Get-WmiObject -Class Win32_AccountSID -ComputerName $computername | foreach { $da = ( ( $_ . Element ) . Split ( “.” ) [ 1 ] ) …