PowerShell Team
Automating the world one-liner at a time…
Latest posts
PrimalForms 2009 – From SAPIEN
SAPIEN Technologies ,makers of PrimalScripts have added another cool product for Windows PowerShell users - PrimalForms. Check it out http://www.primaltools.com/products/info.asp?p=PrimalForms Thanks Osama Sajid, Program Manager
Portable PowerShell – Survey
Have you ever faced a situation where you want to do some PowerShell magic on a server - but you can't because it is not installed. Well, Karl Prosser is now building a tool to do that. From Karl's blog... "Portable PowerShell is software that allows you to run PowerShell on machines that don’t have PowerShell installed that you can run from a Machine that doesn’t have PowerShell on it, from a USB stick, on a machine that has a different version of PowerShell, a preinstall environment like BartPE, or WinPE or when booted to a windows 7 recovery DVD." Right now Karl is asking the community for some feedback t...
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...