You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PowerShell遍历CSV生成PSCustomObject时如何按顺序循环分配子网

Sample Input and Output

要实现按顺序循环分配子网的需求,只需将原有代码中的随机取子网逻辑替换为取模索引取值即可,修改后的完整代码如下:

$csv = Import-Csv C:\ps\sample.csv
$myobject = foreach ($line in $csv) {
    # 提前拆分当前行子网为数组,避免循环内重复操作
    $subnetArr = $line.subnet -split ','
    $subnetTotal = $subnetArr.Count
    if ($line.count -gt 0) {
        for($i = 0; $i -lt $line.count; $i++){
            $count = $i + 1
            [pscustomobject]@{
                VMName = $line.vmname + $count
                # 取模运算实现子网顺序循环复用
                Subnet = $subnetArr[$i % $subnetTotal]
                Sku    = $line.sku
                os     = $line.os
            }
        }
    }
}
$myobject

逻辑说明

假设你子网拆分后共有3个值:Subnet1、Subnet2、Subnet3

  • 当$i=0时,0%3=0,取索引0对应Subnet1
  • 当$i=1时,1%3=1,取索引1对应Subnet2
  • 当$i=2时,2%3=2,取索引2对应Subnet3
  • 当$i=3时,3%3=0,回到索引0对应Subnet1,以此类推,完全匹配你需要的输出效果。

内容的提问来源于stack exchange,提问作者Dilly B

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.21 08:06:04