Building to a Command
noun: crescendo; plural noun: crescendos; plural noun: crescendi
1.
the loudest point reached in a gradually increasing sound.
a gradually increasing sound
2.
the highest point reached in a progressive increase of intensity.
a progressive increase in intensity.
3.
Music
a gradual increase in loudness in a piece of music.
a passage of music marked or performed with a crescendo.
adverb Music
adverb: crescendo
with a gradual increase in loudness.
adjectiveMusic
adjective: crescendo
gradually increasing in loudness.
verb
verb: crescendo; 3rd person present: crescendoes; past tense: crescendoed; past participle: crescendoed; gerund or present participle: crescendoing
increase in loudness or intensity.
I’m sure one of the reasons you work with PowerShell is to build tools. Often, these tools are based on PowerShell commands or even the .NET Framework. But sometimes, we need to build tools based on command-line tools. These are tools that we run from a console prompt but are not PowerShell commands. While it is easy to run these types of commands from a PowerShell prompt, these commands can’t partake of the PowerShell ecosystem.
We can’t typically pipe input to the command or process the output with commands like Sort-Object
or Where-Object
. If we want the command to be a part of the PowerShell ecosystem, we need to wrap the native command in a PowerShell function. This is not a simple task and requires some degree of scripting proficiency.
Microsoft developed a PowerShell module to provide a structured approach to this task. The module is intended as an accelerator, that is, a tool to speed up the process. The tool still requires some scripting proficiency but might be an effective alternative.