Working in a big Enterprise is a whole different animal than small business (which has been my space for a long time). I’m finding myself doing a lot more multi-threading because of the pure scale of things that need to be done and running a single threaded sequence just takes too long. But that doesn’t mean I don’t want to give my users feedback about the progress of my scripts, in fact, the larger the work load the more important feedback becomes. I recently discovered a technique that allows me to do just that–but not before putting my own spin on it.
I’m not the most patient person in the world, nor the most trusting and this has always translated itself into my scripts by giving constant feedback on what’s going on. Write-Progress is a great mechanism for doing this within Powershell as it will provide you with a cool looking progress bar, and bonus, it’s really easy to use!
I wrote about multithreading using Runspace here, but I also wanted to talk about running them the Powershell way using jobs. I want to make sure I give credit where it’s due, because most of my work in Jobs is based on Ryan Witschger‘s work. He writes a great Powershell blog called Get-Blog.com (great site name, too). Anyway, read on for my riff on Powershell jobs and the 3 step process you need to use them.