在前面的章节中,主要介绍了Powershell的开发工具,变量,运算符以及一些特殊的变量,从本节开始介绍Powershell中的语法结构。
本节主要介绍Powershell中的if条件判断。另外希望读者从本节开始使用Powershell_ISE进行代命令的输入与运行,Powershell_ISE提供了界面化的命令输入,参数提示,自带补全,debug等特性,非常有利于编写正确的脚本。
if可用于根据一个或多个条件测试的结果选择运行不同的命令。与Java、C#、C、C++编程语言中的if的使用方法完全一致。
if 语句的语法:if ()
}
[elseif ()
{}]
[else
{}]
运行 If 语句时,PowerShell 计算 条件表达式的结果是 true 还是 false。如果 为 true,则运行 ,并且 PowerShell 退出if语句。
如果 为 false,则 PowerShell 计算 条件表达式所指定的条件。
如果 为 true,则运行 ,并且 PowerShell 退出 if 语句。
如果 和 的计算结果都为 false,则运行 代码块,并且PowerShell 退出 if 语句。
注意: 在其他语言中,else if判断分支中的else和if都是分开的,但是在Powershell中的,两个单词是连接在一起的,需要特别注意。
下面举例说明if语句的使用。if语句只包含一个判断分支。$a=3
if ($a -gt 2)
{
Write-Host "The value $a is greater than 2."
}
在开始处定义了$a=3,然后对a的进行判断,显然条件成立,最后会打印出"The value $a is greater than 2."
2. 也可以对其添加else分支,如$a=3
if ($a -gt 2)
{
Write-Host "The value $a is greater than 2."
}
else
{
Write-Host "The value $a is less than or equal to 2, is not created or is not initialized."
}
3. 添加elseif即可实现对条件的多次判断。if ($a -gt 2)
{
Write-Host "The value $a is greater than 2."
}
elseif ($a -eq 2)
{
Write-Host "The value $a is equal to 2."
}
else
{
Write-Host "The value $a is less than 2 or was not created or initialized."
}
总结
if判断用来判断条件是否成立,并执行相应的操作。比如判断知道的文件或者文件夹是否存在,如果存在就写入文件,如果不存在就创建文件。比如判断知道的调用是否正确执行等等。
本文出自 “花开花落” 博客,谢绝转载!