ZetCode

PowerShell 循环

最后修改:2025 年 2 月 15 日

在本文中,我们将探讨 PowerShell 中的循环。

在 PowerShell 中,循环是控制结构,允许您根据条件重复执行代码块。它们对于自动化重复性任务和处理数据集合至关重要。PowerShell 中常见的循环类型包括 forforeachwhiledo-while 循环。

for 循环基于初始化器、条件和增量器运行指定次数。foreach 循环遍历集合中的每个项目,例如数组或列表。while 循环只要指定条件为真就会继续执行,而 do-while 循环则确保代码块至少执行一次,然后再检查条件。通过使用循环,您可以简化复杂任务并提高脚本的效率。

For 循环

for 循环是一种允许代码重复执行的控制流语句。

for_loop.ps1
for ($i=1; $i -le 5; $i++) {
    Write-Output "Number: $i"
}

在此示例中,我们使用 for 循环打印从 1 到 5 的数字。

for ($i=1; $i -le 5; $i++) {
    Write-Output "Number: $i"
}

for 循环包含三个部分:初始化、条件和增量。

$i=1

我们将变量 $i 初始化为 1。

$i -le 5

我们检查 $i 的值是否小于或等于 5。

$i++

我们将 $i 的值增加 1。

PS C:\> .\for_loop.ps1
Number: 1
Number: 2
Number: 3
Number: 4
Number: 5

输出显示从 1 到 5 的数字。

Foreach 循环

foreach 循环用于遍历集合中的项目。

foreach_loop.ps1
$fruits = @("apple", "banana", "cherry")

foreach ($fruit in $fruits) {
    Write-Output "Fruit: $fruit"
}

在此示例中,我们使用 foreach 循环打印 $fruits 数组中的每个水果。

$fruits = @("apple", "banana", "cherry")

我们创建了一个名为 $fruits 的数组,其中包含三个水果名称。

foreach ($fruit in $fruits) {
    Write-Output "Fruit: $fruit"
}

我们使用 foreach 循环遍历 $fruits 数组中的每个项目。

PS C:\> .\foreach_loop.ps1
Fruit: apple
Fruit: banana
Fruit: cherry

输出显示 $fruits 数组中的每个水果。

While 循环

while 循环是一种控制流语句,它允许在某个条件为真时重复执行代码。

while_loop.ps1
$i = 1

while ($i -le 5) {
    Write-Output "Number: $i"
    $i++
}

在此示例中,我们使用 while 循环打印从 1 到 5 的数字。

$i = 1

我们将变量 $i 初始化为 1。

while ($i -le 5) {
    Write-Output "Number: $i"
    $i++
}

我们检查 $i 的值是否小于或等于 5。如果是,我们就打印 $i 的值并将其增加 1。

PS C:\> .\while_loop.ps1
Number: 1
Number: 2
Number: 3
Number: 4
Number: 5

输出显示从 1 到 5 的数字。

Do while 循环

do while 循环是一种控制流语句,它允许在某个条件为真时重复执行代码。

do_while_loop.ps1
$i = 1

do {
    Write-Output "Number: $i"
    $i++
} while ($i -le 5)

在此示例中,我们使用 do while 循环打印从 1 到 5 的数字。

$i = 1

我们将变量 $i 初始化为 1。

do {
    Write-Output "Number: $i"
    $i++
} while ($i -le 5)

我们首先执行代码块,然后检查 $i 的值是否小于或等于 5。如果是,我们就打印 $i 的值并将其增加 1。

PS C:\> .\do_while_loop.ps1
Number: 1
Number: 2
Number: 3
Number: 4
Number: 5

输出显示从 1 到 5 的数字。

来源

PowerShell 文档

在本文中,我们探讨了 PowerShell 中的循环。

作者

我叫 Jan Bodnar,是一名热情的程序员,拥有丰富的编程经验。自 2007 年以来,我一直撰写编程文章。至今,我已撰写了 1,400 多篇文章和 8 本电子书。我在编程教学方面拥有十多年的经验。

列出 所有 PowerShell 教程