$StartID = Read-Host -Prompt "StartID"
$StopID = Read-Host -Prompt "StopID"
$i = $StartID
do {
Write-Host $startID
Write-Host $StopID
$i = ($StartId + 1)
} until ($i -gt $StopID)
第一个问题是在语句$i = $startid + 1
之后,$i
等于11而不是2。
第二个问题是,即使直到语句表明$i -gt $stop
循环永远继续时,它都应该停止。
如何使$i
增加1而不是10,以及如何在$i -gt $stop
停止循环。
答案 0 :(得分:4)
Read-Prompt
默认情况下返回一个字符串(此stackoverflow answer说明了不同的转换方式)。您必须将字符串转换/转换为数字值:
[int]$start = Read-Host -Prompt "Start"
[int]$stop = Read-Host -Prompt "Stop"
do {
Write-host $start
$start++
} until ($start -ge $stop)
希望有帮助。