【PowerShell講座】関数について

関数について

※この記事は「2021年5月16日」に更新しました。

PowerShell(パワーシェル)講座です。

前回は、バッチファイルからスクリプトを実行する方法を紹介しました。

バッチファイルからスクリプトを実行する

【PowerShell講座】バッチファイルからスクリプトを実行する

2020年1月21日

今回は、関数について、紹介していきます。

ぱそた
SE、Web制作、販売を経験した管理人が解説します。

関数について

他のプログラミング言語と同じように、PowerShell(パワーシェル)も関数を使うことができます。

関数は、パラメータ(引数)をいくつか渡して、内部で処理されて、結果として値を返してくれるというものです。



関数の使い方

関数は、自分で定義することができます。

functionキーワードを使えば、関数を自作することができます。

function 関数名(引数1,引数2,…)
{
	処理
	return 戻り値
}

引数や戻り値はない場合もあります。

これに関しては、他のプログラミング言語と同様です。

ただ、関数名に関しては、PowerShell で使うことを考えるとコマンドレットと合わせて、動詞-名詞 の命名規則に従って名づけるとわかりやすいかと思います。

試しにつくってみましょう。

function Add-Number($num1,$num2) {
  $answer = $num1 + $num2
  return $answer
}

Add-Number 100 50

定義部分(function Add-Number…)が上にあり、呼び出し部分(Add-Number 100 50)が下にあります。

スクリプトは、上から下へ処理されるので、このように書きましょう。

このサンプルを test.ps1 として保存します。

せっかくなんで、前回作成したバッチファイルを使って、実行してみます。

関数について

100 + 50 の結果が出力されているかと思います。

一度定義したら呼び出すだけで使える

関数のメリットは、一度定義してしまえば、あとは呼び出すだけで使えるところです。

function Add-Number($num1,$num2) {
  $answer = $num1 + $num2
  return $answer
}

Add-Number 1 5
Add-Number 7 13
Add-Number 29 41
Add-Number 73 8
Add-Number 120 2

このサンプルを test.ps1 として保存して、また実行してみましょう。

関数について

呼び出した分だけ、結果が出力されているかと思います。

最後に

いかがでしょうか。

簡単な足し算で試しましたが、実際はこんな関数を PowerShell でつくることはほぼないと思います。

動作を確認するために練習しましたが、次回以降の記事でもう少し実践的なものを紹介していけたらと思っています。