Shoeisha Technology Media

CodeZine(コードジン)

特集ページ一覧

Windows PowerShell 入門(3)-スクリプト編

PowerShellで可能なスクリプトの作成方法の習得

  • ブックマーク
  • LINEで送る
  • このエントリーをはてなブックマークに追加
2008/03/11 14:00

Windows PowerShellでのスクリプト操作の基本について習得します。

目次

はじめに

これまでの記事

対象読者

  • Windows PowerShellでコマンドレット操作ができる方(基礎編に書いてある程度のことが理解できていること)
  • 何らかのプログラミング経験があればなお良い

必要環境

  • Windows PowerShell

スクリプトの直接入力

 PowerShellにおけるスクリプトは、コマンドレット、変数、パイプ、ifやforといった制御構文を組み合わせて使用します。

 では、まず簡単なスクリプトをコンソールウィンドウに直接書いてみましょう。

 Windows PowerShellを起動し、下記コードを入力してください。下記コードの最後の}を入力したら[Enter]キーを2回押します。スクリプトの入力が完了し、結果が表示されます(コンソールウィンドウ上でスクリプトを記述している間は1番左側に>>が表示されます。このとき[Enter]キーを2回続けて入力すると、スクリプトの入力を完了し、そこまで書いていたコードを実行します。途中で入力を間違えた場合は[Ctrl]キー+[C]キーで中断することができます)。

PS C:\Work> if ( Test-Path "Test.txt" )
>> {
>>   Write-Host "Test.txtは存在します"
>> }
>> else
>> {
>>   Write-Host "Test.txtは存在しません"
>> }
>>

 このコードは、カレントディレクトリに対してTest.txt というファイルの存在を確認し、存在した時と存在しない時とで表示するメッセージを変えています。

 少し補足説明をします。まずifですが、

if (条件式)
{
}

 のように記述します。

 ifは( )の中に記述した条件式が満たされると、すぐ下の{から}までに書かれたコードを実行します。条件を満たさなかった場合はelseを実行します。

  • Test-Pathコマンドレット
  • 指定したファイルが存在する場合はTRUEを返します
  • Write-Hostコマンドレット
  • コンソールウィンドウに文字列を出力します

 よって今入力したスクリプトは、カレントディレクトリに「Test.txt」ファイルが存在すれば、「Test.txtは存在します」という文字列を、ファイルが存在しなければ「Test.txtは存在しません」という文字列を表示します。

 このようにPowerShellでは、コンソールウィンドウ上で直接スクリプトを実行することが可能です。しかし決まり切ったスクリプトなどは、毎回コンソールウィンドウで入力するのは面倒です。PowerShellでは、スクリプトをファイルに保存して何度でも利用できるように設計されています。

 では、スクリプトファイルはどのように作成したらいいのでしょうか。


  • ブックマーク
  • LINEで送る
  • このエントリーをはてなブックマークに追加

著者プロフィール

  • HIRO(ヒロ)

    HIRO's.NETのHIROです。 とある半導体工場のSEです。 VB.NET, C#, PowerShellによるプログラミングを楽しんでいます。 最近はBlog でPowerShellについて書いています。 2008/07/07にPowerShell from Japan!!という...

バックナンバー

連載:Windows PowerShell 入門

もっと読む

All contents copyright © 2005-2019 Shoeisha Co., Ltd. All rights reserved. ver.1.5