个性化阅读
专注于IT技术分析

PowerShell比较运算符

本文概述

在PowerShell中, 比较运算符用于比较值。默认情况下, 所有比较运算符均区分大小写。这些运算符可帮助我们查找, 测试, 比较, 修改和替换数据和信息。

PowerShell支持以下比较运算符:

PowerShell比较运算符
  1. 平等经营者
  2. 匹配运算符
  3. 遏制运营商
  4. 替代运营商
  5. 类型运算符

平等经营者

相等运算符是那些运算符, 它们检查两个值的相等性, 还检查一个值大于或小于另一个值。

以下是相等比较运算符的列表:

  1. -eq(等于)
  2. -ne(不等于)
  3. -gt(大于)
  4. -ge(大于或等于)
  5. -lt(小于)
  6. -le(小于或等于)

-eq(等于)

如果值相等, 则此运算符返回布尔值TRUE, 否则返回False。

示例:以下示例描述如何使用-eq(等于)运算符:

$a=10
$b=10
($a -eq $b)

此示例中的最后一条命令显示布尔值TRUE, 因为两个变量的值都相同。

-ne(等于)

如果值不相等, 则此运算符返回布尔值TRUE, 否则返回False。

示例:以下示例描述如何使用-eq(等于)运算符:

$a=10
$b=10
($a -ne $b)

此示例中的最后一条命令显示布尔值FALSE, 因为两个变量的值都相同。

-gt(大于)

如果运算符左侧的变量值大于运算符右侧的变量值, 则此运算符返回布尔值TRUE, 否则返回False。

示例:下面的示例描述如何使用-gt(大于)运算符:

$a=20
$b=10
($a -gt $b)

此示例中的最后一条命令显示布尔值TRUE, 因为变量$ a的值大于$ b。

-ge(大于或等于)

如果运算符左侧的变量值大于或等于运算符右侧的变量值, 则此运算符返回布尔值TRUE, 否则返回False。

示例:下面的示例描述如何使用-ge(大于或等于)运算符:

$a=10
$b=10
($a -ge $b)

此示例中的最后一条命令显示布尔值TRUE, 因为变量$ a和$ b的值相同。

-lt(小于)

如果运算符左侧的变量值小于运算符右侧的变量值, 则此运算符返回布尔值TRUE, 否则返回False。

示例:以下示例描述如何使用-lt(小于)运算符:

$a=10
$b=20
($a -lt $b)

此示例中的最后一条命令显示布尔值TRUE, 因为变量$ a的值小于$ b。

-le(小于或等于)

如果运算符左侧的变量值小于或等于运算符右侧的变量值, 则此运算符返回布尔值TRUE, 否则返回False。

示例:下面的示例描述如何使用-le(小于或等于)运算符:

$a=10
$b=10
($a -le $b)

此示例中的最后一条命令显示布尔值TRUE, 因为变量$ a和$ b的值相同。

匹配运算符

匹配运算符是那些运算符, 它们使用正则表达式或通配符比较字符串以找到匹配项。

以下是匹配的运算符的列表:

  1. -喜欢
  2. -比赛
  3. -不匹配

-喜欢

如果使用通配符匹配字符串, 则-like运算符将返回布尔值TRUE。

示例:以下示例描述了如何使用-like运算符:

范例1:

$a="PowerShell"
$b="PowerShell"
$a -like $b

由于两个字符串相同, 因此在example1中, 最后一条命令返回TRUE值。

范例2:

$a="PowerShell"
$b="*Shell"
$a -like $b

此示例中的最后一条命令返回TRUE值, 因为变量$ a中存在” Shell”字符串。

如果字符串与通配符不匹配, 则-notlike运算符将返回布尔值TRUE。

示例:以下示例描述了如何使用-notlike运算符:

范例1:

$a="PowerShell"
$b="windows"
$a -notlike $b

上面示例中的最后一条命令返回TRUE值, 因为字符串不匹配。

范例2:

$a="PowerShell"
$b="*Shell"
$a -notlike $b

此示例中的最后一条命令返回False值, 因为变量$ a中存在” Shell”字符串。

-比赛

如果使用通配符匹配字符串, 则-match运算符将返回布尔值TRUE。如果输入是列表, 则-match运算符返回列表的匹配成员。

例:

$a="January", "February", "March", "April" 
$b="Feb"
$a -match $b

本示例中的最后一条命令返回字符串” February”。

-不匹配

当字符串与通配符不匹配时, -notmatch运算符将返回布尔值True。

示例:以下示例描述了如何使用-notmatch运算符:

范例1:

$a="PowerShell"
$b="ell"
$a -notmatch $b

此示例中的最后一条命令返回FALSE值, 因为变量$ a的字符串中存在字符串” ell”。

范例2:

$a="January", "February", "March", "April" 
$b="Feb"
$a -notmatch $b

本示例中的最后一条命令返回以下字符串:

January
March
April

遏制运营商

包含运算符类似于相等运算符。当运算符右侧的值存在于运算符左侧的值集中时, 这些运算符始终返回布尔值True。否则, 返回False。

以下是遏制运算符的列表:

  1. -包含
  2. -不包含
  3. -在
  4. -notin

-包含

当运算符右侧的值存在于运算符左侧的值集中时, 此运算符将返回布尔值TRUE。

例:

$a="January", "February", "March", "April" 
$b="March"
$a -contains $b

本示例中的最后一条命令返回True。

-不包含

当运算符右侧的值在运算符左侧的值集中不存在时, 此运算符返回布尔值TRUE。

例:

$a="January", "February", "March", "April" 
$b="March"
$a -notcontains $b

本示例中的最后一条命令返回False。

-在

当运算符左侧的值存在于运算符右侧的值集中时, 此运算符将返回布尔值TRUE。

例:

$b="March"
$b="February", "March", "April" 
$a -in $b

本示例中的最后一条命令返回True。

-notin

当运算符左侧的值不存在于运算符右侧的值集中时, 此运算符将返回布尔值TRUE。

例:

$b="March"
$b="February", "March", "April" 
$a -notin $b

本示例中的最后一条命令返回False。

替换运算符

替换运算符(-replace)是一个运算符, 它使用正则表达式将值的全部或部分替换为指定值。

以下语句是-replace运算符的语法:

<input> <operator> <original> , <substitute>

此语法使用两个参数:原始和替代。这些用逗号分隔。

例:

$a="Windows and Linux Operating system"
$a -replace "Linux" , "MacOS"

本示例中的第二条命令显示以下输出:

Windows and MacOS operating system

类型比较运算符

类型比较运算符是那些运算符, 当运算符左侧的值指定为Microsoft .NET类型时, 它们将返回布尔值TRUE, 否则返回False。

PowerShell支持以下两种类型比较运算符:

  1. -是
  2. -不是

-是

当运算符左侧的值指定为Microsoft .NET类型时, 此运算符将返回True。

例:

$a=1
$a -is [int]

该示例中的第二条命令显示布尔值True, 因为变量$ a的值是整数。

-不是

当未将运算符左侧的值指定为Microsoft .NET类型时, -isnot运算符将返回布尔值True。

例:

$a="1"
$a -is [int]

该示例中的第二条命令显示布尔值True, 因为变量$ a的值是一个字符串。


赞(0) 打赏
未经允许不得转载:srcmini » PowerShell比较运算符
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!

 

觉得文章有用就打赏一下文章作者

微信扫一扫打赏