📜  PowerShell比较运算符

📅  最后修改于: 2021-01-08 02:38:17             🧑  作者: Mango

比较运算符

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

PowerShell支持以下运算符:

  • 平等经营者
  • 匹配运算符
  • 遏制运营商
  • 替代运营商
  • 类型运算符

平等经营者

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

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

  • -eq(等于)
  • -ne(不等于)
  • -gt(大于)
  • -ge(大于或等于)
  • -lt(小于)
  • -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的值相同。

匹配运算符

匹配运算符是那些运算符,其比较使用正则表达式或字符找到匹配的字符串。

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

  • -喜欢
  • -不喜欢
  • -比赛
  • -不匹配

-喜欢

如果字符串使用字符匹配的样运算符返回布尔值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。

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

  • -包含
  • -不包含
  • -在
  • -notin

-包含

当运算符者的右边的值在运算符人员的左侧的设定值的存在,这个运算符返回布尔值TRUE。

例:

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

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

-not包含

当运算符右侧的值在运算符左侧的值集中不存在时,此运算符返回布尔值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运算符的语法:

   ,  

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

例:

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

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

Windows and MacOS operating system

类型比较运算符

类型运算符是那些运算符,它返回一个布尔值TRUE时指定的在运算符的左侧的值作为微软.NET类型,否则返回FALSE。

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

  • -是
  • -不是

-是

当指定为Microsoft .NET类型的运算符的左侧值这个运算符返回

例:

$a=1
$a -is [int]

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

-不是

该-isnot运算符返回布尔值True时,没有指定的运算符的左侧的值作为微软.NET类型。

例:

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

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