スクリプト

PowerShellのスクリプトについてのかんたんな説明

拡張子はps1

PowerShellの拡張子は、ps1

スクリプトを作成する

試しに、script.ps1に以下のように記述します。

"Hello World"

スクリプトを実行する

スクリプトを実行するには、.\スクリプトファイル名という風に指定します。

PS> .\script.ps1
Hello World

入力を受け取るスクリプトファイル

スクリプトファイルで、入力を受け取るためには、Param()を使用します。

スクリプト例

試しにscript.ps1を以下のように書き換えます。

param($name)
"Hello $name"

実行例

上記のスクリプトを実行すると、以下のようになります。

PS> .\script.ps1
Hello
PS> .\script.ps1 Bob
Hello Bob

入力のデフォルト値

入力のデフォルト値は、Paramの変数に代入する形で指定します。

スクリプト例

param($name="World")
"Hello $name"

実行例

PS> .\script.ps1
Hello World
PS> .\script.ps1 Bob
Hello Bob

複数の入力を受け取るスクリプト

複数の入力を受け取ることもできます。

スクリプト例

param($name1="World1", $name2="World2")
"Hello $name1 $name2"

実行例

PS> ./script.ps1 Bob1 Bob2
Hello Bob1 Bob2

# パラメーター名を指定するほうが、どのパラメーター何を指定しているのか、わかりやすくて良い
PS> ./script.ps1 -name1 Bob1 -name2 Bob2
Hello Bob1 Bob2

コメントベースのヘルプ

コメントベースのヘルプを書くと、スクリプトや関数を説明できるので、
あとから見返す時にスクリプトの内容を把握しやすくなります。

スクリプト例

Visual Studio Codeの場合、commと入力すると、
簡単にコメントベースのヘルプのスニペットを入力できます。

images

以下の例では、.EXAMPLEの項目を書き換えてみました。

<#
.SYNOPSIS
    Short description
.DESCRIPTION
    Long description
.EXAMPLE
    PS C:\> ./script.ps1 Bob
    Hello Bob
.INPUTS
    Inputs (if any)
.OUTPUTS
    Output (if any)
.NOTES
    General notes
#>
param($name)
"Hello $name"

実行例

Get-Helpコマンドレットを使用すると、対象のスクリプトのヘルプを確認できます。

PS> Get-Help ./script.ps1 -Detailed

NAME
    /Users/miajimyu/Desktop/script.ps1
    
SYNOPSIS
    Short description
    
# 中略
    
    -------------------------- EXAMPLE 1 --------------------------
    
    PS C:\>./script.ps1 Bob
    Hello Bob

YouTube


スポンサーリンク