Windows Powershell条件表达式之条件操作符

2019-09-30 13:53:07刘景俊

三、逻辑和位操作

1) –and与操作符,在操作符两边的操作数均为$true时返回$true。
2) –or或操作符,在任何一个操作数为$true时返回$true。
3) –xor异或操作符,如果有一个操作数是$true,那么表达式返回$true;如果两个操作数均为$true,则返回$false。
4) –not或者! 取反操作符,只有一个操作数,作用将其取反。
5) –band和-bor按位操作与(-band)和按位或(-bor)操作符,仅用于整数。

四、布尔转换

包括位操作符在内的多个操作符返回数字类型的值,PowerShell可以自动将其转换为布尔类型的值,转换规则是任何非空值将会被转换为$true。非空的概念可以被延伸到更宽泛的范围,下的即PowerShell将会在需要时隐式转换为布尔值。也可以在任何值前加[bool]来显式执行强制类型转换,转换规则如下:
1) 任何非零值将会被转换为$true
2) 非零长度的字符串将会被转换为$true
3) 至少有一项的集合会返回$true
4) 其他对象将会被转换成$true,除非它们为$null

五、-like和-match字符串操作符为真,可以用其检测字符串是否由特定模式组成或其中是否包含所需的字符串形式。

六、集合与条件表达式

PowerShell允许在条件表达式的左边使用集合。Shell解释引擎将会把条件表达式逐个应用到集合的成员上,结果是包含返回真值的成员新集合。