PowerShellは、広範なスクリプト言語を含む組み込みのWindowsユーティリティです。コマンドラインアクションを実行するために.batファイルを作成することに慣れている場合は、PowerShellで実行できるすべてのことに感銘を受けるでしょう。私は(まだ)PowerShellの第一人者ではないことに注意してください。しかし、私がそれを使って作業していると、私は非常に感銘を受け、_WindowsTips_の忠実な読者を紹介したいと思いました。

PowerShellはいくつかの異なる方法で起動できますが、表示される内容は、実行しているWindowsのバージョンによって異なります。したがって、さまざまな呼び出し方法について説明しますが、コマンドラインからPowerShellを使用することに集中します。

PowerShellを呼び出す1つの方法は、コマンドラインウィンドウ(別のヒントで説明されています)を開き、「PowerShell」(引用符なし)と入力してからEnterキーを押すことです。もう1つの方法は、Windowsの検索機能を使用して「WindowsPowerShell」を検索することです。 3番目の方法は、「Windows PowerShell」を再度検索し、「WindowsPowerShellISE」という検索結果を選択することです。 Windows 10の最新バージョンでは、この項目を選択すると、画面の左側にPowerShellコマンドをインタラクティブに入力し、画面の左側にPowerShellスクリプトファイルを作成できる分割画面が表示されます。

Windows PowerShell ISE画面は次のようになります:(図1を参照)

image

図1.Windows PowerShellISE。

以前のバージョンのWindows10を使用している場合、この項目を選択すると、画面の下部にPowerShellコマンドをインタラクティブに入力し、画面の上部にPowerShellスクリプトファイルを作成できる分割画面が表示されます。この分割画面は次のようになります:(図2を参照)

image

図2.PowerShellISE。

PowerShellを使用すると、主に「コマンドレット」を処理します。コマンドレットは、_verb-noun_のパターンに従います。たとえば、PowerShell内でヘルプを表示するには、Get-Helpと入力してEnterキーを押します。 PowerShellに関する他のヒントもありますが、待つことができない場合は、次のヘルプトピックから始めることをお勧めします。

PS> Get-Help Get-Command PS> Get-Help Get-Member PS> Get-Help Where-Object PS> Get-Help About_Object

最初のコマンドはコマンドレットに関する情報を返し、2番目のコマンドはオブジェクトのプロパティとメソッドを取得します。 3番目のコマンドはオブジェクトのプロパティをフィルタリングし、最後のコマンドはPowerShellでのオブジェクトの使用について説明します。

PowerShellスクリプトは少し冗長になる可能性があるため、エイリアスと呼ばれるものが組み込まれています。エイリアスは、より一般的なコマンドレットの多くのショートカットです。たとえば、Get-Helpと入力する代わりに、Helpと入力するだけです。既存のエイリアスのリストを表示するには、PSプロンプトでGet-Aliasと入力します。

PowerShellスクリプトは、拡張子が.ps1で終わる通常のテキストファイルであり、機能を実行するように設計された一連のコマンドレットが含まれています。たとえば、コンソールに「Hello」を表示するPowerShellスクリプトを作成できます。ただし、スクリプトを実行する前に、まずセキュリティ環境を確立する必要があります。次の手順に従ってください:

管理者として実行を指定して、Windowsコマンドラインを起動します

コマンドプロンプトで「PowerShell」と入力してPowerShellを起動します

PowerShellプロンプトでSet-ExecutionPolicyRemoteSignedと入力します

これらの手順は、今後スクリプトを実行できるようにするために1回だけ実行する必要があります。次に、メモ帳を起動して、次のように入力します。

Write-Output "Hello"

メモ帳を終了し、ファイルにHello.ps1という名前を付けて、PowerShellセッションで指定されたディレクトリに保存されていることを確認します。 (ディレクトリ名はPowerShellプロンプトの一部です。すべての.ps1ファイルを保存するC:\ PowerShellディレクトリがあります。)PowerShellプロンプトから「。\ Hello.ps1」と入力します

スクリプトが実行されていることを確認する必要があります。つまり、「Hello」という単語が画面に表示されます。

PowerShellについて言えることは他にもたくさんありますが、これは入門的なヒントなので、もう少しだけ言及します。スクリプトにコメントを付けることは常に良い習慣なので、PowerShellのコメント文字は「#」記号であることを知っておく必要があります。この文字の右側に表示されるものはすべて無視されます。また、特殊文字について言えば、PowerShell行を別の行に続ける必要がある場合は、最初の行をアクセント記号( “` “)で終了します。これはバックティック文字または後方アポストロフィと呼ばれることもあります。

慣れるもう1つのことは、あるコマンドの出力を別のコマンドに「パイプ」する機能です。 PowerShellスクリプトには、多くの場合、コマンドレットが他のコマンドレットにパイプされています。パイプ文字は「|」ですシンボル。したがって、たとえば、「フォーマット」コマンドレットの1つにパイプすることにより、1つのコマンドレットの出力をさまざまな方法でフォーマットできます。 「C:\ Temp \ VmwareStatus.log」という名前のファイルのプロパティを取得したいとします。次のようにGet-ItemPropertyコマンドレットを使用してこれを行うことができます:

PS> Get-ItemProperty C:\ Temp \ VmwareStatus.log

デフォルトでは、ファイルのプロパティは表形式で表示されます。

プロパティをリストに表示する場合は、出力をFormat-Listコマンドレットにパイプできます。

PS> Get-ItemProperty C:\ Temp \ VmwareStatus.log |フォーマットリスト

最後に、使い慣れたコマンドライン環境に戻りたい場合は、PowerShellプロンプトで「cmd」と入力するだけです。この環境を終了するには、「Exit」と入力するだけです。 PowerShellを終了するには、「Exit」とも入力します。

このヒント(13506)は、Windows 7、8、および10に適用されます。