Windows PowerShell 基本のキ

技術ネタ PowerShellネタです。

せっかくなんでちょいとDBいじろうと思ったのですが、もっと単純な
覚えておくと便利なことをメモ

get-command ・・・利用可能なコマンド一覧が表示されます。
get-help ・・・・コマンドのヘルプが表示されます。 -detaildをつけると詳細情報

  • full をつけると技術情報 (正直両者の違いはわかんないw)

というわけで、get-commandやって面白そうなコマンド見つけたら、
get-helpで 使い方を調べるといろいろ遊べます。

例:

PS C:\Documents and Settings\xxxx\My Documents> get-command

CommandType Name Definition

                      • ---- ----------

Cmdlet Add-Content Add-Content [-Path] ...
Cmdlet Clear-ItemProperty Clear-ItemProperty [-Path] <...
Cmdlet Clear-Variable Clear-Variable [-Name] ...
Cmdlet Invoke-Expression Invoke-Expression [-Command]...
Cmdlet Invoke-History Invoke-History [[-Id] get-help get-service -full
名前
Get-Service

概要
ローカル コンピュータ上のサービスを取得します。

〜〜〜

                                                    • 例 1 --------------------------

C:\PS>get-service


このコマンドは、システム上のすべてのサービスを取得します。 「get-service *
」と入力した場合と同様に動作します。 既定では、各サービスの状態、サービス名
、表示名が表示されます。




                                                    • 例 2 --------------------------

C:\PS>get-service wmi*


このコマンドは、サービス名が "WMI" で始まるサービスを取得します。




                                                    • 例 3 --------------------------

C:\PS>get-service -displayname *network*


このコマンドを実行すると、表示名に "network" という単語が含まれるサービスが
表示されます。 このコマンドを使用すると、xmlprov (Network Provisioning Serv
ice) のようにサービス名に "Net" が含まれていない場合でも、ネットワーク関連
のサービスを検索することができます。




                                                    • 例 4 --------------------------

C:\PS>$services = get-service

C:\PS>get-service -inputobject $Services -include RPC*


このコマンドを実行すると、サービス名が "RPC" で始まるサービスだけが表示され
ます。 最初のコマンドは、システム上のサービスを取得し、変数 $services に格
納します。 2 番目のコマンドは、変数 $services の中から、"RPC" で始まるサー
ビスをだけを取り出します。 また、InputObject パラメータを使用して、変数に格
納されているオブジェクトを Get-Service に渡します。




                                                    • 例 5 --------------------------

C:\PS>get-service | where-object {$_.Status -eq "Running"}


このコマンドを実行すると、現在実行中のサービスだけが表示されます。 まず、Ge
t-Service コマンドレットを使用して、コンピュータ上のすべてのサービスを取得
します。 パイプライン演算子 (|) により、結果が Where-Object コマンドレット
に渡され、Status プロパティの値が Running のサービスだけが選択されます。

Status は、サービス オブジェクトの 1 つのプロパティにすぎません。 すべての
プロパティを参照するには、「get-service | get-member」と入力します。




というわけで、早速Oracleがらみのサービスを調べてみた。


PS C:\Documents and Settings\xxxxx\My Documents> get-service -displayname *oracl
e*

Status Name DisplayName

            • ---- -----------

Stopped OracleJobSchedu... OracleJobSchedulerORCL
Stopped OracleOraDb10g_... OracleOraDb10g_home1TNSListener
Running OracleServiceORCL OracleServiceORCL


おぉ。ちゃんと出るじゃん。良いね。