$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。 第二个问题是,即使 till 语句说它应该在循环永远持续$i -gt $stop
时停止。
如何让$i
增加 1 而不是 10,以及如何在$i -gt $stop
时停止循环。
Read-Prompt
默认返回一个字符串(这个 stackoverflow 答案解释了不同的转换方式(。您必须将字符串转换/强制转换为数值:
[int]$start = Read-Host -Prompt "Start"
[int]$stop = Read-Host -Prompt "Stop"
do {
Write-host $start
$start++
} until ($start -ge $stop)
希望有帮助。