执行管道时,管道中的命令会应用于每个对象。 在某些情况下,可能需要使用 ForEach-Object cmdlet 来处理管道中的数据。 将数据存储在数组中时,ForEach 构造支持处理数组中的每个项。
ForEach 构造使用以下语法:
在前面的示例中,有一个名为 的数组,其中包含 Active Directory 域服务 (AD DS) 用户对象。 ForEach 构造会为每个对象处理一次大括号之间的 Windows PowerShell 命令。 处理命令时, 是包含数组中每个项的变量。 在第一次迭代中, 包含 ,在第二次迭代中, 包含 。 这会一直持续到数组中的所有项都已处理一次。
在脚本中,ForEach 构造是处理已放入数组的项的最常用方法。 它易于使用,因为无需了解项数即可进行处理。
前面的示例在大括号之间仅有一个命令,但可以添加许多命令,这些命令将针对每个循环进行处理。 按照约定,大括号之间的命令缩进是为了使脚本更易于查看。 缩进不是技术要求,但却是一种很好的做法。
ForEach 循环中的变量命名应是有意义的。 大多数时候,将循环中使用的变量清楚地识别为数组的单个实例。 例如,对于名为 的数组,循环中使用的变量可能是 。 你可能会注意到带有单个字母的变量示例,该字母与数组的首字母相同。 但是,这应该仅用在简单的代码中,其中很容易判断它们是相关的。
在 PowerShell 7 中,已将 -Parallel 参数添加到 ForEach-Object cmdlet。 这样,管道就可以同时处理多个对象。 相较于标准 ForEach 循环,同时处理多个对象所提供的性能更佳。 如果使用的是 PowerShell 7,应考虑这一点。 以下示例说明了如何将 ForEach-Object 与 -Parallel 参数配合使用。
默认情况下,-Parallel 参数支持一次处理五个项。 可以使用 -ThrottleLimit 参数将其修改为更大或更小的值。
到此这篇vbs for循环语句(vbscript for循环)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!版权声明:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权、违法违规、事实不符,请将相关资料发送至xkadmin@xkablog.com进行投诉反馈,一经查实,立即处理!
转载请注明出处,原文链接:https://www.xkablog.com/rfx/15864.html