Behind the PowerShell Pipeline
Subscribe
RSS
Archive
PowerShell Scripting with CIM_DataFile
$ · June 11, 2024
I've been exploring the world of CIM scripting a lot these days. I thought we'd continue that journey today. I'm sure most of you are familiar with the Win32...
More CimSession Toolmaking
$ · June 6, 2024
In the last article, I started demonstrating how you can build your own PowerShell tooling using the CIM .NET classes. While I still recommend using cmdlets...
CimSession PowerShell Scripting
$ · June 4, 2024
Last week, I was working on updates to the PSScriptTools module. I am adding new functions based on Get-CimClass. As I was working, I ended up diving deeper...
PowerShell Pot Luck May 2024
May 29, 2024
Here we are again at the end of another month. I hope you learned a few things from the newsletter this month. Don't forget that premium subscribers have...
PowerShell Filters and Functions
$ · May 23, 2024
The other day I saw social media post from Adam Bertram about PowerShell filters. Talk about a blast from the past. Back in the early days of PowerShell,...
What Are We Talking About?
$ · May 21, 2024
Most of the time PowerShell is pretty clear about what it is doing. The language attempts to be concise but not cryptic. For example, PowerShell commands...
Exposing PowerShell Module Scope
$ · May 16, 2024
In the previous article, I demonstrated how to take advantage of the module scope. This is what allows you to have functions and variables available to...
Using Module Scope
$ · May 14, 2024
One of the most perplexing topics in PowerShell, especially for beginner scripters is scope. Referencing items like variables and functions that may or may...
More PSReadLine Power
$ · May 9, 2024
Last time, I showed you how to customize PSReadLine in your module by taking advantage of examples in the sample PSReadLine profile script. But since this...
PSReadLine Profile Power
$ · May 7, 2024
The PSReadLine module is one of the most useful tools we have in PowerShell. You utilize it every day without realizing it. An early version of the module...
Using Synchronized HashTables
$ · May 2, 2024
Last month, I introduced you to the topic of creating and using PowerShell runspaces. This is definitely and advanced topic and for those special use cases...
PowerShell Round-Up April 2024
April 30, 2024
Thank you for sticking around for another month. There's always something new to learn. Don't forget that premium subscribers have full access to the archive...
More PowerShell Runspace Fun
$ · April 25, 2024
In the last article, we began to explore how to use custom runspaces in our PowerShell scripting. Is still believe that using cmdlets like Start-Job and...
Scripting with PowerShell Runspaces
$ · April 23, 2024
A great deal of what we do in PowerShell is based on the use of runspaces. These are are configured containers, not in the Docker sense, that allow us to run...
Going Out with a Bang!
$ · April 18, 2024
I'm sure you'll agree that PowerShell is a terrific management and automation tool. The concept of passing objects through the pipeline is a powerful feature...
Cross-Platform PowerShell Scripting Tips
$ · April 16, 2024
I was at the PowerShell+DevOps Global Summit last week, helping to run the OnRamp program. I was demonstrating a PowerShell example in PowerShell 7 on my...
Defining WPF with XAML
$ · April 11, 2024
During our exploration of creating a Windows Presentation Foundation (WPF) PowerShell script, I've been taking a programmatic approach. That is, I've been...
Decorating Your PowerShell WPF Script
$ · April 9, 2024
Let's get back to exploring what we can do with Windows Presentation Foundation (WPF) PowerShell scripts. You've seen how to create a simple form using a...
PowerShell Regex Groupies
$ · April 4, 2024
My friend Gladys reached out the other day for help with a regular expression problem. She told me she was trying to do use capture groups with data from a...
JSON Serialization Options
$ · April 2, 2024
In the previous article in this series, we explored PowerShell serialization. This is the process of converting an object into a format that can be stored or...
PowerShell Potluck - March 2024
March 28, 2024
Month-end recap: PowerShell presentations, Git aliases, Test-Path tips, future plans. Email behind@jdhitsolutions.com for questions.
Serialization Situation
$ · March 26, 2024
One of PowerShell's greatest strengths, and one of its greatest challenges, is its object-oriented nature. Once you get your head wrapped around this...
WPF PowerShell Applications
$ · March 22, 2024
In the last article, I demonstrated how to use common WPF controls in your script. There is a lot of code to write to create a WPF-based PowerShell script,...
More WPF Controls
$ · March 20, 2024
I want to quickly apologize for the odd email you may have received. I was testing the Buttondown API for creating emails and I accidentally sent the email...
Stacking Up with WPF
$ · March 14, 2024
Let's continue looking at how to create simple Windows Presentation Foundation (WPF) tools in PowerShell. This is a handy way to give users a graphical...
Building the Foundation for Windows Presentation
$ · March 12, 2024
Before we get into today's topic, a few housekeeping items. In the last few articles, I took advantage of the attachment feature. I knew I couldn't send .ps1...
Toolmaking Toolmaking
$ · March 7, 2024
At first glance, you might think I made a mistake with the title of today's article. But I didn't. I want to continue sharing my process in building an...
Documents and Objects
$ · March 5, 2024
Over the course of the last few weeks, I've been sharing my experiences in building PowerShell tooling that I can use to create an archive index for this...
Ask Jeff - February 2024
February 29, 2024
Here we are the end of a quick month. I think the migration issues are behind us and I hope to get back track with my usual publishing cadence. Here's my...
More Archive Toolmaking
$ · February 27, 2024
In the last article, I started down the road of creating tools that I could use to build an archive index for this newsletter. Every previous article can be...
Creating Buttondown Tooling
$ · February 22, 2024
Creating Buttondown Tooling I thought I'd shift gears and start working on tooling for Buttondown, which delivers this newsletter. While I've been happy with...
Making Progress
$ · February 20, 2024
Making Progress In a recent article, I showed a sample function to illustrate a point. Part of the function used the Write-Progress cmdlet. This wasn't the...
Take Control of Errors
$ · February 16, 2024
Take Control of Errors Let's wrap up our exploration of common parameters with a look at how you can manage errors. While I think you should take advantage...
Fanfare for the Common Parameter
$ · February 14, 2024
Fanfare for the Common Parameter A quick note to paid subscribers, it appears migration issues with subscriptions have been resolved. No action is required...
For the Common Good
$ · February 8, 2024
For the Common Good I am still working out paid subscription migration issues. I am pursuing another option that should be transparent to you. Thank you to...
Subscription Updates
$ · February 7, 2024
I Need Your Help If you are a paid subscriber, AND you subscribed on Buttondown, the following does not apply to you, although you are welcome to read and...
Adding More Zip to your PowerShell
$ · February 6, 2024
Welcome back. I have a quick housekeeping note before I get to today's topic. I am still working out a few behind-the-scenes kinks with the migration to the...
Privacy and Tracking
February 5, 2024
Full Disclosure As part of migrating to the new platform, I want to be completely open about privacy and tracking. First, my subscriber list is mine alone...
Welcome to Our New Home
February 2, 2024
We're Here! Aha! You should have received an email article from Substack about migrating this newsletter to a new platform. I also wanted to send one from...
Ask Jeff
January 30, 2024
January 2024
Add Some Zip to Your PowerShell
$ · January 25, 2024
We’ve been looking at the System.IO namespace. Existing cmdlets and PowerShell providers cover much of this namespace's functionality. But that doesn’t mean...
Finding Your Way on the System.IO.Path
$ · January 23, 2024
Since we’ve been exploring ways to use .NET classes to supplement existing command coverage in PowerShell, I thought we should explore the System.IO...
More String Building
$ · January 18, 2024
Last time, we looked at a number of ways of constructing strings. This is something you might use to create log messages or define variables. There is also...
Building Better Strings
$ · January 16, 2024
Let’s continue exploring other .NET classes you might want to incorporate into your PowerShell scripting. Today, I want to cover a .NET class that I know is...
Environmental Impact
$ · January 11, 2024
Let’s continue our exploration of using the [System.Environment] class from the .NET Framework. As I explained last time, there is no way to construct an...
Taking Care of the Environment
$ · January 9, 2024
We all know that PowerShell is based on the .NET Framework. PowerShell exposes a lot of the framework through abstractions like cmdlets and providers....
Extending RESTful Objects
$ · January 3, 2024
Welcome to 2024! I want to thank all of my subscribers once again for making it possible for me to do this newsletter. I have a full slate of articles...
A Final REST API Course
$ · December 21, 2023
Over the last few articles, I’ve demonstrated various techniques for consuming REST API data in your PowerShell code. Let’s wrap up this discussion with a...
A Second Helping of REST APIs
$ · December 19, 2023
We’ve been dining on REST APIs served up by PowerShell. I hope you got a chance to try out the code examples from the previous article. I want to continue...
Who's Hungry for a REST API?
$ · December 14, 2023
One of my favorite uses of PowerShell is how it can consume data from a REST API. You don’t have to be a web developer, although there are a few concepts you...
Newer archives
Older archives
GitHub
Bluesky
LinkedIn
Mastodon
About Jeff