PowerShell Team

Automating the world one-liner at a time…

15 Minutes with Lang.Net

Microsoft is an awesome place to work on languages! Lang.Net is a great language conference that Microsoft holds every year.  We bring in people from all around the industry that are passionate about languages and then race through a set of topics.  All the talks are given 15 or 30 minute slots so that we can get through a ton of ...

Increasing visibility of cmdlet design guidelines

Summary In PowerShell v1, we published a set of cmdlet design guidelines that included direction on how to properly name cmdlets. Throughout the v2 cycle, we've seen an increase in cmdlet authors deviating from the standards in unexpected ways. Our user community (you all) has become particularly vocal in recent months that we needed to do ...

Configuring PowerShell for Remoting – Part 2 (Fan-In)

The features discussed in this blog post depend on PowerShell CTP3 release. Details about PowerShell CTP3 can be found at http://blogs.msdn.com/powershell/archive/2008/12/23/early-christmas-present-from-powershell-team-community-technology-preview-3-ctp3-of-windows-powershell-v2.aspx The Part 1 of this series concentrated on configuring ...

Introducing the WMI Blog

The people over on WMI, WinRM, and BITS have started up a blog to share their systems management expertise with the world.  Check it out: http://blogs.msdn.com/wmi/ Here are some fun posts to get you started: Accessing WMI Data via WinRM Let’s Troubleshoot WMI (Part 1: Remoting & Security) (this one includes a handy chart I ...

Checking for bound parameters

I recently read an email where someone was asking how they could check in their function if a value had been provided to one of the parameters.  Consider for example,     The usual way I’ve seen people deal this problem is by providing a default value which gets assigned to $x in the case that a value wasn’t provided by the...

Setting Network Location to Private

The Network Location feature was introduced in Windows Vista. It provides an easy way to customize your firewall settings based on whether you trust or don’t trust the computers around you. There are three Network Location types - Private, Public and Domain. If your computer is a member of the domain then you won’t be able to change the ...

Many² ways you can set a variable value

There are many ways to set a variable's value. I just learnt one more yesterday. If you have others, please add comments # Simple# $ gets the variable, and = will assign it$a = 1 # With Variable Scope# The prepend is the scope, and could be global, script, and others# Useful when you want to keep things in script scope, or share them out in ...