# generate 220 items
$items = @()
foreach($i in 1..220) {
$items += @{
id = $i
name = "company $i"
}
}
$items.Count # 220
# split array into batches
$size = 100
$batches = for($i=0; $i -lt $items.Count; $i+=$size){ ,($items[$i..($i+$size-1)])}
$batches.Count # 3
$batches[0] | select -First 1 id # 1
$batches[0] | select -last 1 id # 100
$batches[1] | select -First 1 id # 101
$batches[1] | select -last 1 id # 200
$batches[2] | select -First 1 id # 201
$batches[2] | select -last 1 id # 22
# process items in batches
foreach($batch in $batches) {
foreach($item in $batch) {
# todo
}
}