一起学习网 一起学习网

Windows Powershell For 循环

如果你知道循环的确切次数可以使用For循环,For循环属于计数型循环,一旦达到最大次数,循环就会自动终止。下面的例子通过循环求1-100的数列和。

$sum=0

for($i=1;$i -le 100;$i++)

{

    $sum+=$i

}

$sum

For循环是特殊类型的While循环

在For循环开始的圆括号中,由分号隔开的语句为循环的控制条件,分别为:初始化,循环执行满足的条件,增量。
For循环的控制语句第一个和第三个可以为空:

$sum=0

$i=1

for(;$i -le 100;)

{

    $sum+=$i

    $i++

}

$sum

For循环的特殊应用

上面的For循环示例停留在数字层面上,其实While循环能办到的事,For循环也可以,只是可能有时不方便而已。例如判断域名的例子:

for($domain="";!($domain -like "www.*.*");$domain=Read-Host "Input domain")

{

    Write-Host -ForegroundColor "Green" "Please give a valid domain name."

}

Please give a valid domain name.

Input domain: www

Please give a valid domain name.

Input domain: mossfly.com

Please give a valid domain name.

下面的例子演示逐行读取文本文件

for($file=[IO.File]::OpenText("c:autoexec.bat") ; !($file.EndOfStream);$line=$file.ReadLine() )

{

    $line;

}

$file.Close()

REM Dummy file for NTVDM

Windows Powershell Switch 循环
Switch本是多路分支的关键字,但是在Powershell中由于Switch支持集合,所以也可以使用它进行循环处理。下面举两个例子。第一个将Foreach循环转换成Switch循

Windows Powershell 定义函数
函数是自定义的Powershell代码,有三个原则:简短:函数名简短,并且显而易见。聚合:函数可以完成多个操作。封装和扩展:将一批Powershell语句进行封

Powershell小技巧之获取注册表值的类型
当你不需要获取注册表数据类型而只要其值是非常简单的:你可以使用Get-ItemProperty:Get-ItemProperty-PathHKLM:SOFTWAREMicrosoftWindowsCurrentVersionRun如果你需要获