迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 编程语言 >

在 PowerShell 中退出 Foreach 对象

作者:迹忆客 最近更新:2024/02/01 浏览次数:

ForEach-Object cmdlet 允许用户遍历集合并对输入对象集合中的每个项目进行操作。在 ForEach-Object 中,输入对象通过管道传送到 cmdlet 或使用 -InputObject 参数指定。

在 PowerShell 中构造 ForEach-Object 命令有两种不同的方法:脚本块操作语句ForEach-Object cmdlet 运行每个输入对象的脚本块或操作语句。

使用脚本块来指定操作。 $_ 变量在脚本块中用于表示当前输入对象。

script block 可以包含任何 PowerShell 脚本。例如,以下命令获取计算机上安装的每个 cmdlet 的 Name 属性、函数和 aliases 的值。

Get-Command | ForEach-Object {$_.Name}

构造 ForEach-Object 命令的另一种方法是使用 operation 语句。你可以使用操作语句指定属性值或调用方法。

Get-Command | ForEach-Object Name

有时,在某些情况下,你可能想要退出 ForEach-Object,但它的工作方式与 ForEach 语句不同。在 ForEach-Object 中,一旦生成每个对象,就会执行该语句。

ForEach 语句中,在循环执行之前收集所有对象。ForEach-Object 是一个 cmdlet,而不是实际的循环。

当你使用 breakcontinue 退出循环时,整个脚本将终止,而不是跳过它后面的语句。但是,可以使用 PowerShell 中的某些条件退出 ForEach-Object 对象。


使用 break 条件从 PowerShell 中的 ForEach-Object 退出

我们创建了一个对象集合 $numbers 用作 ForEach-Object 中的输入对象。

$numbers = "one","two","three","four","five"

Where-Object cmdlet 允许你根据属性值从集合中选择对象。你可以先在 Where-Object 中应用退出逻辑,然后将对象传递给 ForEach-Object

然后使用如下所示的 break 条件从 PowerShell 中的 ForEach-Object 退出。

$Break = $False;

$numbers | Where-Object { $Break -eq $False } | ForEach-Object {

    $Break = $_ -eq "three";

    Write-Host "The number is $_.";
}

当对象值等于 three 时,ForEach-Object 将跳过对对象集合的迭代。因此,我们将退出 PowerShell 中的 ForEach-Object

输出:

The number is one.
The number is two.
The number is three.

使用 if 从 PowerShell 中的 ForEach-Object 退出

在此方法中,你需要在对象集合中使用 empty 值以退出 PowerShell 中的 ForEach-Object。例如,你可以使用 if 条件退出 ForEach-Object

$numbers = "one","two","three","","four"

$numbers | ForEach-Object{
        if($_ -eq ""){
        break;
}
    Write-Host "The number is $_."
}

我们创建了一个对象集合 $numbers,其中包含字母数字和一个空值。

ForEach-Object 中,我们创建了一个 if 条件,它表明对象的值是否等于 null,然后打破 ForEach-Object 语句。

输出:

The number is one.
The number is two.
The number is three.

正如我们所看到的,程序的输出最多打印到 。对象集合中有一个空值。

该程序在它之后终止。这样,我们就可以得到结果并退出 ForEach-Object

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

在 Windows PowerShell 中获取命令行参数

发布时间:2024/03/04 浏览次数:358 分类:编程语言

本文将解释我们如何使用 PowerShell 的参数函数处理命令行参数,参数如何工作,我们如何使用 PowerShell 参数将值传递给参数,以及定义参数的基本方法是什么。

Windows PowerShell 中的 Base64 编码

发布时间:2024/03/04 浏览次数:332 分类:编程语言

本文将展示如何编码和解码 base64 字符串。Windows PowerShell 当前版本没有本机命令,因此我们将向你展示如何执行此操作的替代方法。

在 Windows PowerShell 中写入输出

发布时间:2024/03/04 浏览次数:259 分类:编程语言

本文将向你展示如何在 Windows PowerShell 中编写或打印输出。本文还将区分多个 write cmdlet 并解释它们的意义。

在 PowerShell 中注释代码

发布时间:2024/03/04 浏览次数:363 分类:编程语言

本文将展示在 Windows PowerShell 中注释代码的多种方法。本文还介绍了注释代码时的一些最佳实践。

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便