ページ「Windows PowerShell」と「コマンドレット」の間の差分

提供: MonoBook
(ページ間の差分)
ナビゲーションに移動 検索に移動
 
imported>GamerBook
(ページの作成:「'''コマンドレット'''(cmdlet)とは、Windows PowerShellコマンドのことである。 == 概要 == コマンドレットの実態は[[.NET Fra...」)
 
1行目: 1行目:
'''Windows PowerShell'''(読み:ういんどうずぱわーしぇる)とは、[[マイクロソフト]]が[[cmd.exe]]に代わるべく開発した[[CUI]]の[[シェル]]および[[スクリプト言語]]である。
+
'''コマンドレット'''(cmdlet)とは、[[Windows PowerShell]]の[[コマンド]]のことである。
  
== 名称 ==
+
== 概要 ==
Windows PowerShellという正式名称は長ったらしいので[[Windows]]と付けずに単に'''PowerShell'''と呼ばれたり、さらには'''PS'''と略されていることも多い。
+
コマンドレットの実態は[[.NET Framework]][[クラス]]である。
 
+
[[コンソールアプリケーション]](.[[exeファイル]])ではなく[[クラスライブラリ]](.[[dllファイル]])である。
なお、[[PS]]まで短く略すと[[UNIX]][[OS]]でプロセス一覧表示用に使われpsコマンドや[[PlayStation]]と混同される恐れがあるので注意する必要がある。ちなみにPowerShellでもプロセス一覧表示にはpsコマンド(Get-Processコマンドレットの別名)がデフォルトで割り当てられている。
 
 
 
かつては [[Microsoft Shell]](MSH、コードネーム [[Monad]])とも呼ばれていたが、今ではその呼称で呼ぶものはいない。
 
  
== 概要 ==
+
従来の[[cmd.exe]]ではcmd.exe内蔵コマンドもしくは個々のコンソールアプリケーションであったが、コマンドレットはDLLファイルであるためそのままでは利用できず、事前に[[PowerShell]]に登録しておく必要がある(スナップインの追加)。
PowerShellは古くから[[Windows]]で使われている[[cmd.exe]]や、[[UNIX]]や[[Linux]]で使われている[[csh]]や[[bash]]、[[zsh]]などとは一線を画す独特な作りとなっている。
 
  
PowerShellの各[[コマンド]]は[[コマンドレット]]([[cmdlet]])と呼ばれ、その実態は[[.NET Framework]]の[[クラス]]である。
+
利用できるコマンドレットの一覧を表示するにはPowerShellを開き「Get-Command」と入力する。なお[[UNIXシェル]]と異なりPowerShellは大文字小文字を区別しない。
 +
<pre>
 +
PS C:\Users\user03> Get-Command
 +
</pre>
  
== 歴史 ==
+
== コマンドレットの命名規則 ==
=== PowerShell 1.0 ===
+
コマンドレット名は「動詞-名詞」という規則になっている。コマンドレットを自作する場合には留意すること。
=== PowerShell 2.0 ===
 
従来は[[バッチファイル]]的な意味合いだけであった[[スクリプト言語]]部分が大幅に拡張され、[[C Sharp|C#]]などを使わずともPowerShellスクリプトだけで[[関数]]や[[コマンドレット]]が作れるようになり、[[プログラミング言語]]としての意味合いが非常に強くなる。
 
  
=== PowerShell 3.0 ===
+
;例
2012年9月4日(米国時間)に[[Windows Management Framework 3.0]]([[WMF]])に含まれるかたちで無償公開された<ref>http://www.microsoft.com/en-us/download/details.aspx?id=34595</ref>。なお、[[Windows 8]]および[[Windows Server 2012]]には標準で[[WMF3.0]]が含まれているため別途[[インストール]]する必要はなく、それ以前の[[Windows 7]]や[[Windows Server 2008 R2]]を利用している場合には[[マイクロソフト]]の[[サイト]]上から[[ダウンロード]]して[[インストール]]する必要がある。
+
* Get-Command
 +
* Get-Help
  
; 主な変更点
+
== 主なコマンドレット ==
* [[.NET Framework 2.0]]ベースから[[.NET Framework 4.0]]ベースへと変更
+
{{stub}}
* [[Dynamic Language Runtime]]([[DLR]])に対応
 
* PowerShell 2.0で搭載された[[スクリプト言語]]が[[JITコンパイル]]に対応し劇的に高速化
 
* 「[[Windows PowerShell ISE]]」が[[インテリセンス]]に対応
 
* 「[[Workflow]]」が追加。壮大な機能なので詳細は[[ググれ]]。
 
* [[cmd.exe]]を不要にする1000以上の[[コマンドレット]]が追加
 
*: [[Windows Server 2008 R2]]までの[[Windows Server Core]]は汎用的に使えるものではなかったが、この大量の[[コマンドレット]]追加おかげで[[Windows Server 2012]]の[[Windows Server Core]]は[[Linux]]並みとまではいかないものの、そこそこ[[CUI]]でも使い物になるようになった。
 
  
== 使い方 ==
+
== コマンドレットの作り方 ==
* [[/使い方]]
+
{{stub}}
 +
=== スナップインを作る ===
 +
=== コマンドレットを作る ===
 +
=== スナップインを登録する ===
  
 
== 関連項目 ==
 
== 関連項目 ==
 +
* [[Windows PowerShell]]
 +
* [[Windows PowerShell/スクリプト]]
 
* [[Pash]]
 
* [[Pash]]
* [[コマンドレット]]
 
  
 
== 参考文献 ==
 
== 参考文献 ==

2012年12月5日 (水) 05:10時点における版

コマンドレット(cmdlet)とは、Windows PowerShellコマンドのことである。

概要

コマンドレットの実態は.NET Frameworkクラスである。 コンソールアプリケーション(.exeファイル)ではなくクラスライブラリ(.dllファイル)である。

従来のcmd.exeではcmd.exe内蔵コマンドもしくは個々のコンソールアプリケーションであったが、コマンドレットはDLLファイルであるためそのままでは利用できず、事前にPowerShellに登録しておく必要がある(スナップインの追加)。

利用できるコマンドレットの一覧を表示するにはPowerShellを開き「Get-Command」と入力する。なおUNIXシェルと異なりPowerShellは大文字小文字を区別しない。

PS C:\Users\user03> Get-Command

コマンドレットの命名規則

コマンドレット名は「動詞-名詞」という規則になっている。コマンドレットを自作する場合には留意すること。

  • Get-Command
  • Get-Help

主なコマンドレット


コマンドレットの作り方

スナップインを作る

コマンドレットを作る

スナップインを登録する

関連項目

参考文献