(24)Poweshell中的if条件判断

在前面的章节中,主要介绍了Powershell的开发工具,变量,运算符以及一些特殊的变量,从本节开始介绍Powershell中的语法结构。

  • 本节主要介绍Powershell中的if条件判断。另外希望读者从本节开始使用Powershell_ISE进行代命令的输入与运行,Powershell_ISE提供了界面化的命令输入,参数提示,自带补全,debug等特性,非常有利于编写正确的脚本。

if可用于根据一个或多个条件测试的结果选择运行不同的命令。与Java、C#、C、C++编程语言中的if的使用方法完全一致。

if 语句的语法

if (<测试条件1>)
    <语句块1>}
[elseif (<测试条件2>)
    {<语句块2>}]
[else
    {<语句块3>}]

运行 If 语句时,PowerShell 计算 <测试条件1> 条件表达式的结果是 true 还是 false。

  • 如果 <测试条件1> 为 true,则运行 <语句块1>,并且 PowerShell 退出if语句。
  • 如果 <测试条件1> 为 false,则 PowerShell 计算 <测试条件2> 条件表达式所指定的条件。
  • 如果 <测试条件2> 为 true,则运行 <语句块2>,并且 PowerShell 退出 if 语句。
  • 如果 <测试条件1> 和 <测试条件2> 的计算结果都为 false,则运行 <语句块3> 代码块,并且PowerShell 退出 if 语句。

注意: 在其他语言中,else if判断分支中的else和if都是分开的,但是在Powershell中的,两个单词是连接在一起的,需要特别注意。

下面举例说明if语句的使用。

  1. 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判断用来判断条件是否成立,并执行相应的操作。比如判断知道的文件或者文件夹是否存在,如果存在就写入文件,如果不存在就创建文件。比如判断知道的调用是否正确执行等等。

时间: 2024-08-26 07:37:57

(24)Poweshell中的if条件判断的相关文章

Excel怎么样让负数自动显示红色在自定义格式中如何添加条件判断呢【已解决】

在通常的情况下,负数会用红色显示,而这里的负数就是一个简单的条件判断.那么怎么才能让excel遇到负数就变成红色,效果如图常见问题出现特定的数据时怎么变颜色? 比如数值为负数就自动变成红色? [解决方法,教程视频资料如下]资料来源:http://edu.51cto.com/course/15224.html 完整博客资料:http://blog.51cto.com/13172026/2292179 完整视频资料:http://edu.51cto.com/lecturer/13162026.htm

Shell中[]里面的条件判断

1.字符串判断 str1 = str2 当两个串有相同内容.长度时为真 str1 != str2 当串str1和str2不等时为真 -n str1 当串的长度大于0时为真(串非空) -z str1 当串的长度为0时为真(空串) str1 当串str1为非空时为真 2.数字的判断 int1 -eq int2 两数相等为真 int1 -ne int2 两数不等为真 int1 -gt int2 int1大于int2为真 int1 -ge int2 int1大于等于int2为真 int1 -lt int

linux Shell中常用的条件判断

-b file            若文件存在且是一个块特殊文件,则为真 -c file            若文件存在且是一个字符特殊文件,则为真 -d file            若文件存在且是一个目录,则为真 -e file            若文件存在,则为真 -f file            若文件存在且是一个规则文件,则为真 -g file            若文件存在且设置了SGID位的值,则为真 -h file            若文件存在且为一个符合链接

python Django教程 之模板渲染、循环、条件判断、常用的标签、过滤器

python3.5 manage.py runserver python Django教程 之模板渲染.循环.条件判断.常用的标签.过滤器 一.Django模板渲染模板 注: 本节代码是基于 Django 1.8,但 Django 1.4 - Djagno 1.9 操作流程也是一样的. 后文给出示例代码可以在 Django 1.4.x 到 Django 1.9.x 上运行. 不过还是强调一点,一点要动手敲代码!不要偷懒哦,动手才能学到真东西. 1. 创建一个 zqxt_tmpl 项目,和一个 名

Linux学习笔记--bash脚本编程之二、条件判断

 bash脚本编程之二.条件判断 条件判断: 如果用户不存在 添加用户,给密码并显示添加成功: 否则 显示用户已存在,没有添加 bash中如何实现条件判断? 整数测试 字符测试 文件测试 条件测试的表达式:     [expression]     [[expression]]     test expression 整数比较: -eq:测试两个整数是否相等:比如 $A -eq $B     -ne:测试两个整数是否不等:不等,为真:相等,为假:     -qt:测试一个数是否大于另一个数:大于

bash 脚本编程之二 条件判断

bash中如何实现条件判断 条件判断类型: 整数判断(双目判断): -eq:等于 .equal,测试两个整数之间是否相等,比如$A -eq $B -gt:大于.greater than -lt:小于.lesser than -ne:不等于.no  equal 这里也可以用另外一种写法,比如[ 2 -ne 3 ]可以写作[ ! 2 -eq 3 ] -le:小于或等于.lesser or equal -ge:大于等于.greater or equal ... 字符判断: 文件判断:单目判断 -e:e

Makefile条件判断 ——————————【Badboy】

使用条件判断,可以让make根据运行时的不同情况选择不同的执行分支.条件表达式可以是比较变量的值,或是比较变量和常量的值. 一.示例 下面的例子,判断$(CC)变量是否"gcc",如果是的话,则使用GNU函数编译目标. libs_for_gcc = -lgnu normal_libs= foo: $(objects) ifeq($(CC),gcc) $(CC) -o foo $(objects) $(libs_for_gcc) else $(CC) -o foo $(objects)

bash脚本编程之(3/4)条件判断、算符运算、整数测试、文件测试、特殊变量等笔记

Shell编程: 编译器,解释器 编程语言: 机器语言.汇编语言.高级语言 静态语言: 编译型语言 强类型(变量) 事先转换成可执行格式 c\c++\JAVA\c# 动态语言: 解释性语言 弱类型 边解释边执行 asp/asp.net/php/shell/python/perl Shell: 弱类型编程语言 强类型: 变量在使用前,必须事先声明,甚至还需要初始: 弱类型: 变量用时声明,甚至不区分类型: 面向过程: Shell C 面向对象: JAVA Python, perl, c++ 变量:

linux 笔记--扩展正则表达式,bash脚本—变量,条件判断,算术运算

正则表达式:有两类,一:basic regexp  二:extended(扩展正则表达式)  他们的部分元字符不一样,意义也不相同 grep:使用基本正则表达式或定义的模式中过滤文本的命令,-E;使用扩展正则表达式  -A 数字:不仅显示匹配到的行,还显示后面几行  -B 数字:不仅显示匹配到的行,还显示前几行  -C 数字:不仅显示匹配到的行,还显示前后个几行 扩展正则表达式: 其中 . [] [^] * ^ $ \< \>与grep是相同的, ? 与 \?:意思相同,可以不写\  +:其前