先日、Power Shellを使う機会があった。
Powe Shellはコマンドプロンプトと似た機能を持つものと言うなんとな〜くの認識はあったものの、Power Shellとコマンドプロンプトの具体的な違いは分かっていなかったので、これを機に知らめてみた。
Power Shellとは

パワーシェル(Power Shell)とは、
マイクロソフトが開発した、CUIのシェルのことだ。
コマンドプロンプトをパワーアップしたものの考えてもらえば良い。
コマンドプロンプトと同様にコマンドを実行できたり、スクリプト(拡張子は.ps1)を実行することができる、つまり、コマンドベースでwindowsPCを管理できると言うのが特徴だ。
- マイクロソフトが開発した、CUIのシェルのこと
- コマンドプロンプトをパワーアップしたもの
- コマンドベースでwindowsPCを管理できる
Power Shellとコマンドプロンプトとの違い

Power Shellとよく似たものに「コマンドプロンプト」があるが、
Power Shellとコマンドプロンプトの具体的な違いについて説明していく。
違いというよりも、、
Power Shellとコマンドプロンプトの具体的な違いと書いた。
しかし「別物」ととらえるのではなくて、
「パワーシェルのほうがより強力」くらいに覚えておくのが良いかもしれない。

というのもなぜかというと、基本的に、
コマンドプロンプトでできることは、パワーシェルでもできる。
そもそもマイクロソフトがコマンドプロンプトの上位互換みたいなものとしてつくったのがパワーシェルだからだ。
どちらもコマンドベースでPCを操作することには変わりがないが、
より強力な要素を盛り込んだのがパワーシェルという認識で良いと思う。
コマンドレットを使うことができる
Power Shellでは、
「コマンドレット」を使用することができる。
コマンドレットとは、
Power Shellでのみ使うことのできる、独自のコマンドのことだ。
例えば下記は、
Set-Locationと言うディレクトリを移動するコマンドレットを使用した例だ。
# カレントディレクトリを移動
PS C:\Users\Administrator> Set-Location C:\temp\tempdir
PS C:\temp\tempdir>
「Set-Location 移動先」と打つことで、移動先に移動できる。
コマンドレット使い方は基本的に、
「動詞-名詞」の形式になっている。
なので、
「〇〇する-何を」という直感的な扱い方ができるのが特徴だ。
コマンドプロンプトでも「cd」コマンドで、同じことができるが、
重要なのは、他にも便利な機能を持った、たくさんのコマンドレットが存在することだ。
コマンドプロンプトにはないコマンドや、コマンドプロンプトでは実現不可能な機能を持ったコマンドレットがPower Shellには存在する。
そのため、コマンドレットがあることにより、
より柔軟でより複雑な処理をPower Shellでは実行することができると言うことだ。
- 違いと言うよりも、コマンドプロンプトより強力な要素を盛り込んだのがパワーシェル
- コマンドレットと呼ばれる、通常のコマンドよりも柔軟で複雑な処理を実行する機能が備わっている。
パイプ処理ができる
linuxのコマンドを使ったことがあると想像しやすいが、
Power Shellではパイプ処理を使うことが可能だ。
パイプ処理とは、
一つのコマンドの実行結果を、次のコマンドの実行に受け渡すことをいう。
レジストリなどにもアクセスできる
あまりよくわかってないが、コマンドプロンプトでは管轄できない、
レジストリなどのより深い部分まで踏み入ってPCを管理できるみたい。
性能的な違い
軽量さ、起動の速さではコマンドプロントに軍配。
より複雑な処理ができ便利な分、Power Shellのほうが重いようだ。
また、Power Shellでスクリプトを書くとなると、
プログラミング的な書き方になってくるため、学習コストがかかる点はある。
Power Shellの起動方法
最後に、Power Shellの起動方法を紹介する。
「スタート → Windows PowerShell」から探すことができる

PowerShellを上記手順で探すと、下記の二つの種類が見つかるので、用途に合わせてどちらかを選択する。
- Windows Power Shell
- Windows Power Shell ISE
①Power Shell
Power Shellとだけ書いているものは、
Power Shell用コンソールのみが出てくるものだ。
Power Shellコマンドのみ使いたいときに使う。
使い方としてはコマンドプロンプトと変わらない。

②Windows PowerShell ISE
Power Shell ISEと書いているものは、
標準のPower Shell用エディタだ。
Power Shellのスクリプト(拡張子.ps1)を書くことができ、デバッグ機能などが備わっている。
プロンプトも表示されるため、ここから単純にPower Shellを使うこともできる。

Power Shell ISEはIDE(統合開発環境)なので、デバッグも可能だ。
PowerShell ISEのデバッグ方法については、下記記事にて紹介しているので、参考にして欲しい。
関連記事
https://docs.microsoft.com/ja-jp/powershell/
https://www.dospara.co.jp/5info/cts_str_pcuse_powershell