[PowerShell][基本] 変数のスコープについて

本記事の概要

PowerShell には、変数に適用されるスコープについてのいくつかのルールがあります。スコープは、変数が使用できる範囲を決定するために使用されます。この記事では PowerShell の変数スコープについて説明します。

Global スコープ

スクリプトのグローバルな範囲で使用される変数に適用されます。
このスコープで宣言された変数は、スクリプトのどこからでも参照できます。
グローバル変数は、 $global: の接頭辞を使用して参照する必要があります。

Script スコープ

スクリプトファイルの範囲で使用される変数に適用されます。
このスコープで宣言された変数は、スクリプトファイルのどこからでも参照できます。
スクリプト変数は、 $script: の接頭辞を使用して参照する必要があります。

Local スコープ

ローカルスコープ内でのみ使用される変数に適用されます。
関数やスクリプトブロック内で宣言された変数は、そのブロック内でのみ参照できます。
ローカル変数は、 $local: の接頭辞を使用して参照する必要があります。

Private スコープ

モジュール内で使用される変数に適用されます。
このスコープで宣言された変数は、モジュール内のどこからでも参照できます。
プライベート変数は、 $private: の接頭辞を使用して参照する必要があります。

Function スコープ

関数内で使用される変数に適用されます。
このスコープで宣言された変数は、関数内のどこからでも参照できます。
関数変数は、 $function: の接頭辞を使用して参照する必要があります。

まとめ

スコープを明示的に指定しない場合、PowerShell はデフォルトでローカルスコープを使用します。また、スコープが異なる場合でも同じ名前の変数を宣言することができますが、各スコープ内での変数は別々のものとして扱われます。

コメント

タイトルとURLをコピーしました