PowerShell スクリプトの特定の場所にジャンプする
- 
          
            whileステートメントを使用して、PowerShell のスクリプト内の特定の場所にジャンプする
- 
          
            forステートメントを使用して、PowerShell のスクリプト内の特定の場所にジャンプする
- 
          
            functionを使用して、PowerShell のスクリプト内の特定のスポットにジャンプする
 
GOTO コマンドは、バッチ プログラム内のラベル付きの行にジャンプします。 ラベルで指定された行にコマンド処理を指示し、コード行を繰り返す機能を提供します。
PowerShell には GOTO コマンドがありません。 代わりに、ループ ステートメントを使用して、反復またはコード行の繰り返しを行うことができます。
このチュートリアルでは、PowerShell スクリプトの特定の場所にジャンプする方法を説明します。
while ステートメントを使用して、PowerShell のスクリプト内の特定の場所にジャンプする
while ステートメントは、条件が true である限り、ブロック内のコマンドを実行します。 これは、条件が true の場合にコード行を繰り返すことを意味します。
コード例:
$a = 1
while ($a -lt 10) {
$a
$a++
}
最初のコマンドは、値 1 を変数 $a に代入します。 while ブロック内では、$a の値が出力されます。
条件 $a is not less than 10 は true であり、$a の値は反復ごとに 1 ずつ増加します。 $a の値が 10 に達すると、条件文は false になり、ループは終了します。
その結果、1 から 9 までの数字が出力されます。
出力:
1
2
3
4
5
6
7
8
9
条件が true の場合に実行される while ループをスクリプトに作成できます。 条件が false の場合はスキップされ、スクリプトは次のスポットにジャンプします。
for ステートメントを使用して、PowerShell のスクリプト内の特定の場所にジャンプする
for ステートメントまたは for ループは、条件に基づいてブロック内のコマンドを実行します。 ループ内のコマンドは、条件が false になるまで実行され続けます。
次の例では、条件 $b is less than 6 は true に評価され、for ループ内のコマンドは、条件が 6 に等しいときに false になるまで実行されます。
コード例:
for ($b=1; $b -lt 6; $b++){
Write-Host $b
}
出力:
1
2
3
4
5
function を使用して、PowerShell のスクリプト内の特定のスポットにジャンプする
別の代替オプションは、コマンドのブロックを関数でラップすることです。 次の例では、$continue の値が y に等しい場合、条件は true になります。
その結果、if ステートメントの最初のコマンドが実行されます。
コード例:
function Choice {
$continue = Read-Host "Do you want to continue?"
if ($continue -eq 'y'){
Write-Host "Welcome to PowerShell tutorials."
}
else {
Write-Host "Exited."
}
}
Choice
出力:
Do you want to continue?: y
Welcome to PowerShell tutorials.
$continue の値が y と等しくない場合、条件は false になり、2 番目のコマンドが実行されます。
出力:
Do you want to continue?: n
Exited.
このようにして、スクリプトを PowerShell の特定の場所に簡単にジャンプさせることができます。
