PowerShell Team
Automating the world one-liner at a time…
Latest posts
Windows PowerShell 2.0 RTM
Windows 7 and Windows Server 2008 R2 have been released to manufacturing. Both of these products include Windows PowerShell 2.0 and its exciting new features, such as remoting, ISE, modules, advanced functions, enhanced WMI support, and a variety of new cmdlets, plus a ton of other features. We are proud of this release. We thank the PowerShell community, specially our MVPs, for helping us to make a great product. In the next few months, we will release a downlevel package for installing Windows PowerShell 2.0 on Windows XP SP3, Windows 2003 SP2, Windows Vista-SP1 and Windows Server 2008. Thanks Osama S...
Dynamic binary modules
Using add-type and import-module you can dynamically compile and load an assembly without any intermediate assembly files to cleanup. For instance, to run a cmdlet on a remote machine you could send over the cmdlet source code, compile, import, and run it all on the fly. Let’s say you have your cmdlet called Use-MyCmdlet as C# code in the file mycode.cs: This example gets the C# code as a string and starts a remote session. It then compiles the code in the remote session with Add-Type and passes the resulting assembly object to import-module. The cmdlet Use-MyCmdlet is invoked in the remote ...
URLs for PowerShell Core Help Topics
Several Windows PowerShell online help fans have requested a list of all of the URLs of Windows PowerShell Core online help topics in the TechNet Library. I'm providing them here so that they're available to everyone. The file includes URLs for the current Windows PowerShell Core conceptual ("about"), cmdlet, and provider help, custom cmdlet help for the WSMan provider, and a few useful reference topics, including the Windows PowerShell main page in the TechNet library. The attached CSV file has three columns: · Type (About, Cmdlet, Provider, Ref...
Free PowerShell V1 Book From the Makers of PowerShell Plus
A number of you are already familiar with Dr Tobias Weltner. Tobias has been involved with Windows scripting for many many years. He was very active in the VBScript and WMI communities and then an very early adopter of PowerShell. He is on of the PowerShell MVPs and the inventor of the amazing PowerShell Plus (I had Tobias demo this in one of my talks and people’s jaws just dropped). This week Tobias is making waves again by releasing a FREE PowerShell book “Mastering PowerShell”. This appears to be a very comprehensive book at 567 pages. Here is the TOC: Chapter...
Final Approved Verb List for Windows PowerShell 2.0
First, I want to say thanks to everyone who posted suggestions for the verb list on the blog post at http://blogs.msdn.com/powershell/archive/2009/04/22/soliciting-new-verbs.aspx. In addition to the blog comments, we received a lot of feedback from our MVPs and internal partners. I wanted to loop back with everyone on the outcome of the verb list update and post the final approved verb list for Windows PowerShell 2.0. I also wanted to give visibility into what some of the verbs were that we considered but ultimately did not approve and what we feel are the best matches for those on the approved list. In total, we...
Evolution vs. Intelligent Design
I’m watching a cool talk by Greg Kroah Hartman about the Linux Kernel. He just said something that I absolutely LOVE and feel great kinship towards. He said that the joke in the Linux community is that “Linux is not ‘Intelligent Design’, it’s ‘Evolution’. Which means we react to stimuli that’s happening in the world … we don’t over-plan things”. I think that is a great mindset. This is one of the things we wanted to achieve with PowerShell, to give you the tools that allowed you to respond to the world as it changed instead of us trying to deliver a fixed scenario and then if...
Advanced Debugging in PowerShell
Here is a collection of tips and tricks to debug PowerShell Read UpThere is a 7-part series of “Debugging Monad Scripts” that Jon Newman wrote a few years ago that covers a lot of tips, including error handling, traps, tracing, and covers a lot of V1 stuff. Clean codeThe best route, is to make sure code is clean, and common errors are caught. To do so, runSet-StrictMode -Version 2 Note, there’s a lot of normal PowerShell (v1 and V2) that StrictMode barfs on, so its recommend to only use Set-StrictMode when trying to debug their own scripts. You can also change your error, and warning preference to make PowerShell...
Function Help Cannot Share a Cmdlet Help File
In Windows PowerShell 2.0, you can write help topics for functions, scripts, and modules, just as you do for cmdlets and providers. In fact, as a best practice, you should always include help topics for all shared PowerShell items. And we make it easy. For functions and scripts, you can write comment-based help topics right in the script or function (see about_Comment_Based_Help) or you can write XML-based help topics that use the same schema as cmdlet help topics. .To do so, just add the .ExternalHelp comment keyword to the function or script followed by the path and name of the XML file that contains the...
PowerScripting Podcast update
PowerScripting Podcast hosted by MVP Hal Rottenberg will have MVPs Joel Bennett & Oisin Grehan. They will talk about PoshCode See it live tonight at 9pm EDT http://www.ustream.tv/channel/powerscripting-podcast Next week: MVP Don Jones will talk about security in PowerShell. Thanks Osama