PowerShell
拡張可能な「プロバイダ」モデルにより、ファイルシステムなどの階層的データ構造の処理をすることができる。例えば、PowerShellにはシステムのレジストリにアクセスするレジストリプロバイダが存在する。これを用いれば、例えばシェルプロンプトで次のようなコマンドを打つことによってレジストリの内容を表示することができる。dir HKLM:SOFTWARE\MicrosoftPowerShell には認証ストア、環境変数、シェル機能とエイリアスなどのプロバイダが存在する。プロバイダモデルはコマンドレットと同様に拡張可能であり、第三者が独自のプロバイダを作成してPowerShellに組み込むことができる。
「実行ポリシー (execution policies)」という概念により、PowerShellによるスクリプトの実行に対して大まかなセキュリティ上の制約を課すことができる。実行ポリシーはPowerShellが設定ファイルを読み込み、スクリプトを実行するための制約を定義する。Restricted、AllSigned、RemoteSigned、Unrestrictedという四つの実行ポリシーが存在する。
スクリプト作成者の識別や、スクリプトの安全性の保証のため、デジタル署名によってスクリプトに署名することができる。
通常、コマンドラインオプションは省略せずに完全な英単語を用いるが、曖昧でない範囲で文字数を小さくすることができる。例えば、-show-detailed-informationオプションは他に「s」で始まるオプションがなければ-sと指定することができる。
またWSHの持つセキュリティ上の欠陥をつくコンピュータウイルスがいくつか出現したため、システム上の脆弱性とみなされたこともあり、広く普及するには至らなかった。
そして2003年、マイクロソフトはWindowsや自社製品のシステム管理・自動化を行うための新世代シェルとして、またスクリプトとして実行可能なプログラミング言語としてMonad(後の PowerShell)を発表した。
2015年9月現在、Windows PowerShellの正式な最新バージョンは5.0であり、Windows 10に標準搭載されている。Windows 8.1に標準搭載されているバージョンは4.0、Windows 8に標準搭載されているバージョンは3.0、Windows 7に標準搭載されているバージョンは2.0となる。
2016年8月には、PowerShellのオープンソース化、並びにLinuxとOS Xへの移植が発表された。これは同年6月にリリースされたオープンソースの.NET Coreに続くものとなった。
2020年11月、PowerShell 7.1リリース。.NET 5.0を使用する。
マイクロソフトによるOSにはMS-DOSからWindowsに至るまで、どのバージョンにもコマンドラインシェルが付属した。それは、かつてはCOMMAND.COMであり、Microsoft Windows NTベースの製品においてはcmd.exeであった。これらのツールはグラフィカルユーザインタフェース (GUI) で提供されるような管理機能の自動化や再利用に必ずしも長けているとは言えなかった。これはコマンドライン内の制限によるものであり、マイクロソフトが高品質なコマンドラインツールを提供しなかったためでもあった。
マイクロソフトはコマンドラインツールの短所を補うものとして、1998年にWindows 98でWindows Script Host (WSH) を提供した。これは様々なスクリプト言語を実装するための新しいソフトウェアであった。しかしWSHはシェルに統合されていないという欠点があり、ドキュメントも非常に使いにくいものだった。
2012年9月リリース。動作には.NET Framework 4を必要とする。