Behind the PowerShell Pipeline
Subscribe
Archives
Automatic PowerShell Modules
$ · October 1, 2024
In a previous email I demonstrated PowerShell code that generated custom PowerShell functions. This is a clever way to create commands with a very specific...
PowerShell Potluck - September 2024
September 27, 2024
Welcome back to another PowerShell Potluck, and you didn't have to bring a thing, other than a little curiosity and a willingness to try new things. Here's a...
Creating a PowerShell Code Factory
$ · September 24, 2024
I am always on the look out for ways to get more done faster and with less effort. Especially when it comes to writing PowerShell code. I have lots of VSCode...
What Is That Thing Called?
$ · September 20, 2024
Recently, I was looking at a friend's new module on GitHub. He is by no means a beginner, but hasn't written many modules. He was creating a module based on...
Master Your Environment Part 3
$ · September 17, 2024
Note: I am aware that code samples are not respecting HTML tags and rendering some characters with their HTML codes. Buttondown is working on this issue. I...
Master Your Environment Variables
$ · September 13, 2024
In the previous email, we started looking at ways to use the [System.Environment] .NET class. Even though the ENV: PSDrive exposes some of the class's...
Master Your Environment
$ · September 10, 2024
PowerShell, as its name implies, is a shell. It is an interactive command-line interface to the underlying operating system. PowerShell is designed so that...
Creating Pandoc PowerShell Tools Part 2
$ · September 6, 2024
I've been sharing my experiences in building Pandoc-based PowerShell tools. My ultimate goal is to create a tool that will convert a Markdown README file...
Creating Pandoc PowerShell Tools
$ · September 4, 2024
One of the things I enjoy about creating a PowerShell-based tool is discovery. When writing code, I will realize that it would be helpful if I could use a...
August 2024 PowerShell Potluck
August 30, 2024
Here we are again at the end of another month. I hope you found this month's content helpful. I am always open to suggestions on topics that you'd like to...
Pandoc, PDFs, and PowerShell
$ · August 27, 2024
I hope that you've been intrigued by the possibilities of Pandoc. It's a powerful tool that can help you convert documents between a wide variety of formats....
More Pandoc and PowerShell Possibilities
$ · August 23, 2024
Let's pick up where we left off, exploring how to use the pandoc utility to convert markdown files to HTML. In the previous post, we looked at the basics of...
Document Tricks with Pandoc and PowerShell
August 20, 2024
Today's content is a little different. I'm not going to focus on a specific PowerShell topic, but rather something I think of as "PowerShell adjacent." You...
Accelerating Your PowerShell Help Documentation
$ · August 16, 2024
If you are creating PowerShell modules, I hope you are creating external help documentation. The easiest way to do this is with the platyPS module which you...
Creating PowerShell Custom Formatting
$ · August 13, 2024
We all know the importance of objects in PowerShell. PowerShell works with objects and lets you manipulate them in the pipeline. At the end of the process,...
Location Tricks with PowerShell
$ · August 9, 2024
I'm sure it comes as no surprise to you that I spend a lot of time at a PowerShell prompt. I am always looking for ways to minimize the amount of typing I...
Creating ANSI Progress Bars in PowerShell
$ · August 7, 2024
Let's wrap up our exploration of ANSI alternatives and look at one last item. In the previous article in this series, I shared some code you could use to...
PowerShell Potluck: July 2024 Round Up
July 31, 2024
Once again, the end of another month has snuck up on me. For those of you in the Northern Hemisphere, I hope you're enjoying the summer weather and finding...
More PowerShell Scripting Candy
July 25, 2024
I hope the recent articles on embellishing your PowerShell code have been interesting and inspiring. Running code in the console doesn't have to be boring...
More ANSI Alternatives
July 23, 2024
I've been demonstrating how to use ANSI to display messages in the console while your PowerShell code is executing. What I've shown you should be considered...
Verbose Message ANSI Alternatives
July 18, 2024
If you've been following my work for a while, you know I am a big fan of using `Write-Verbose`. I find the verbose output very helpful when I am writing a...
Pester Testing with InModuleScope
July 16, 2024
In a recent article, we looked at writing a Pester test that required mocking private functions. These are functions intended to be used within your code,...
Pester Testing .NET with Copilot Part 3
July 11, 2024
I've been sharing my experiences writing Pester tests for a PowerShell function that uses the .NET Framework instead of invoking native cmdlets. The process...
More Pester Testing .NET with Copilot
July 9, 2024
Last time I started exploring how to build a set of Pester tests for code that is written around the .NET Framework. I am using the `Get-OSDetail` function...
Pester Testing .NET with Copilot
July 3, 2024
Over the last few weeks, I've been showing how to build PowerShell tools that rely on the .NET Framework in place of calling native PowerShell commands like...
PowerShell Potluck: June 2024
June 27, 2024
Time to wrap up another month of PowerShell fun. In North America, we're heading into the the middle of summer. My part of the country promises to be an oven...
Creating PSSession-Based PowerShell Tools
June 25, 2024
Let's continue our exploration of creating and working with `PSSession` objects built from scratch. While I would normally use `New-PSSession`, using the...
Scheduled Goof
June 18, 2024
It looks like I goofed with this week's posts and you got everything I had planned for this week today. Sorry about that. I double-checked and next week...
Native PSSession PowerShell Scripting
June 18, 2024
The exploration of CIM and using the `CimSession` .NET class in PowerShell scripting got me thinking about another remoting option, `PSSession`. This could...
Native Win32_Directory Scripting
June 18, 2024
I hope you've had an opportunity to try the code examples from the last few articles. I'm not implying that using CIM classes is necessarily the the best way...
Win32_Directory Scripting
June 13, 2024
In the [last article](https://buttondown.email/behind-the-powershell-pipeline/archive/powershell-scripting-with-cim_datafile/), I introduced you to the...
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](https://github.com/jdhitsolutions/PSScriptTools) module. I am adding new functions based on `Get-...
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
Learn how to use regular expression named captures in PowerShell to extract data from log files, and created custom objects for structured data storage.
Newer archives
Older archives
GitHub
Bluesky
LinkedIn
Mastodon
About Jeff