PowerShell

When someone talks about “shell” in the software world, almost every one was certain that the context is *nix. But not in recent past. Microsoft has developed its own task automation and configuration management tool called PowerShell, which it made open-source fairly recently. There are some similarities between *nix shell and PowerShell, but not many.

What is PowerShell?

It is a task automation and configuration management framework developed by Microsoft. It consists of command line interface and has a scripting languageĀ associated with it. When this framework was made open-source, it was also made cross-platform and now can be used on MacOS, CentOS, and Ubuntu apart from Windows.

PowerShell is built using .NET framework. It consists of .NET classes called cmdlet (pronounced as command-let) which execute the given task. A set of cmdlet forms a script. Each cmdlet can access underlying systems such as File System or Registry.

So isn’t this same as *nix shell?

Not really. There’s an important difference. On *nix systems, all shell commands have text output and can be chained together using a pipe (‘|’). However, in PowerShell, the output of every cmdlet is an object and hence subsequent cmdlets need to understand the object when cmdlets are chained.

What all can I do using PowerShell?

  • Scheduled jobs
  • Sessions
  • Desired State Configuration
  • Where and ForEach constructs
  • and many more.

Related Links

Related Keywords

Windows, Tools

Leave a Reply

Your email address will not be published.

This site uses Akismet to reduce spam. Learn how your comment data is processed.