[玩转系统] 使用 PowerShell 之类的操作符(以及更多)快速启动您的游戏
作者:精品下载站 日期:2024-12-14 13:01:25 浏览:18 分类:玩电脑
使用 PowerShell 之类的操作符(以及更多)快速启动您的游戏
与许多其他编程语言一样,PowerShell 具有各种比较运算符。然而,与其他语言不同,这些比较运算符可能看起来有点奇怪。您拥有 eq
,而不是 ==
。您得到的是 ne
,而不是 。这可能会让新手感到困惑。让我们看看本文中的 PowerShell like 运算符和其他比较运算符。
使用 eq
和 ceq
运算符测试相等性
要检查一个对象是否等于 PowerShell 中的另一个对象,可以使用 eq
运算符来完成。 eq 运算符比较多种类型的简单对象,例如字符串、布尔值、整数等。使用时,eq
运算符将根据结果返回布尔 True
或 False
值。
-eq
运算符需要两个值进行比较。假设您将一个字符串分配给名为 $string
的变量。您希望将此变量的值与字符串值“PowerShell”进行比较,以确保它们相等。
在以下示例中,您可以看到我们将值 PowerShell
分配给变量 $string
。然后,使用 eq
运算符,该示例将 $string
的值与字符串 powershell
进行比较。很容易,对吧?但是等等,它们实际上并不相同。
PS> $string = "PowerShell"
PS> $string -eq "powershell"
True
请注意,=
是赋值运算符,而不是比较运算符。您不能使用 =
在 PowerShell 中将一个值与另一个值进行比较。
使用 ceq
运算符测试区分大小写
在上面的示例中,请注意 eq
如何返回布尔 True
值,即使字符串不完全相同也是如此。发生此行为的原因是 eq
运算符不区分大小写。要测试区分大小写的相等性,请使用 ceq
运算符。 ceq
运算符与 eq
完全相同,只是区分大小写。
您可以在以下代码片段中看到使用ceq
的示例。现在请注意 PowerShell 会区分大小写。
PS> $string -ceq "PowerShell"
True
PS> $string -ceq "powershell"
False
使用 ne
和 cne
运算符测试不等式
正如 eq
和 ceq
测试相等一样,PowerShell 有一对执行完全相反操作的运算符,称为 ne
和cne
。与它们的对应操作符一样,这两个操作符执行完全相同但相反的操作。
PS> $string = "PowerShell"
PS> $string -ne "PowerShell"
False
PS> $string -cne "PowerShell"
False
PS> $string -cne "powershell"
True
测试集合中的项目
通常,eq
和 ceq
运算符用于标量或单个值,例如字符串、整数和布尔值。但这些运算符还可以查找包含在集合(如数组)中的特定值的实例。
请注意,在下面的示例中,我们创建了一个包含 12 个整数的数组。也许您想查找该数组中等于数字 9 的所有实例。没问题,对数组使用 eq 运算符即可返回所比较整数的所有实例。
PS> $array =@(1,2,3,4,5,6,7,8,9,9,9,9)
PS> $array -eq 9
9
9
9
9
PS> ($array -eq 9).Count
4
测试集合以包含值
由于您刚刚了解了如何使用 eq 运算符来查找数组中的实例,让我们更进一步并介绍“包含”运算符。这些运算符是 contains
、notcontains
、in
和 notin
。如果集合包含实例,这些运算符将返回布尔True
或False
值。
查看以下示例。在此示例中,我们创建一个包含九个整数的数组。如果您想要简单地回答该数组是否包含某个整数,则可以使用 contains
或 notcontains
获得答案。
PS> $array = @(2,4,5,6,8,8,9,9,9)
PS> $array -contains 9
True
PS> $array -notcontains 9
False
PS> $array -contains 5
同样,您还有 in
和 notin
运算符。这些运算符与 contains
和 notcontains
几乎相同,但有一个例外:要比较的值位于左侧而不是右侧。
$array = @(2,4,5,6,8,8,9,9,9)
9 -in $array
True
9 -notin $array
False
使用 gt
和 ge
运算符测试“大于”
如果您需要测试一个数字(整数)是否大于另一个数字或者大于或等于另一个数字,会发生什么?您可以使用 gt
和 ge
运算符。这些运算符比较整数。
与其他运算符一样,这些运算符返回布尔 True
或 False
值,具体取决于一个整数是否大于另一个整数。这两个运算符都测试左侧整数是否大于或大于或等于右侧整数。
在下面的示例中,您可以看到每个运算符的行为方式。
PS> 7 -gt 5
True
PS> 7 -gt 7
False
PS> 7 -ge 7
True
与允许您在集合中查找实例的 eq
运算符类似,您也可以使用 ge
和 gt
运算符执行相同的操作。 PowerShell 搜索集合中的每一项,并将每个值与您提供的值进行比较。您可以在下面看到一个很好的例子。
PS> $array =@(1,2,3,4,5,6,7,8,9,9,9,9)
PS> $array -gt 5
6
7
8
9
9
9
9
PS> $array -ge 5
5
6
7
8
9
9
9
9
使用 lt
和 le
运算符测试“小于”
与 gt
和 ge
运算符类似,lt
和 le
运算符执行相同但相反的功能。 lt
和 le
运算符比较两个值,测试左侧的整数是否小于或小于或等于右侧的整数。
您可以在下面的示例中看到,比较集合中每个值的相同功能与 gt
和 ge
完全相同。
PS> $array =@(1,2,3,4,5,6,7,8,9,10)
PS> $array -lt 5
1
2
3
4
PS> $array -le 5
1
2
3
4
5
基于通配符与 PowerShell Like 运算符的匹配
到目前为止,您已经学会了如何进行 1:1 比赛。到目前为止使用的所有运算符都将一个完整值与另一个值进行比较,但 PowerShell 还有另一个技巧。您还可以根据通配符或星号比较值。
假设您只知道字符串中的几个字符。您不能使用 eq
,因为 eq
要求您知道整个字符串。使用 PowerShell like 运算符,您不必知道整个字符串。要测试一个值是否与另一个值相似,您可以用通配符替换您不知道的部分。
与其他运算符一样,相同的功能也可以应用于集合。
您可以在下面看到 PowerShell like 的示例,它是区分大小写的兄弟 clike
。
PS> $string = "PowerShell"
PS> $string -like "*Shell"
True
PS> $array = @("PowerShell","Microsoft")
PS> $array -like "*Shell"
PowerShell
PS> $array -clike "*Shell"
PowerShell
如果未找到匹配项,则运算符 -notlike
返回布尔值 True
;如果存在匹配项,则返回 False
。如果针对集合使用,它将返回与 -notlike
运算符右侧给出的模式不匹配的所有其他值。使用 -cnotlike
运算符为模式添加区分大小写的功能。
$string = "PowerShell"
$string -notlike "*Shell"
False
$array = @("PowerShell","Microsoft")
$array -notlike "*Shell"
Microsoft
$array -cnotlike "*shell"
PowerShell
Microsoft
基于正则表达式的匹配
PowerShell 之类的运算符及其相关运算符很方便,但一旦您开始需要更复杂的匹配。到那时,您就可以深入了解正则表达式 (regex) 的深奥世界了。使用 match
和 notmatch
运算符,您可以使用正则表达式执行极其复杂的字符串匹配。
类似于 PowerShell like 运算符 match
及其相反的对应项 notmatch
,比较两个字符串,返回布尔值 True
或 False
值。此外,与其他运算符一样,可以将相同的行为应用于集合,如下例所示。
PS> $string = "PowerShell"
PS> $string -match "ow"
True
PS> $array = @("PowerShell","Microsoft")
PS> $array -match "ow"
PowerShell
PS> $string = "PowerShell"
PS> $string -cmatch "po"
False
PS> $string -cmatch "Po"
True
PS> $array = @("PowerShell","Microsoft")
PS> $array -cmatch "Po"
PowerShell
概括
在本文中,您了解了 PowerShell like 运算符和许多其他运算符,以及如何将每个运算符用于单个值和集合。您已经看到了输出如何根据运算符以及标量还是集合而有所不同。
此外,您还看到了区分大小写的运算符、如何根据正则表达式或通配符进行匹配的匹配运算符,以及用于测试对象是否包含特定值或特定对象中是否存在某个值的包含运算符。
猜你还喜欢
- 03-30 [玩转系统] 如何用批处理实现关机,注销,重启和锁定计算机
- 02-14 [系统故障] Win10下报错:该文件没有与之关联的应用来执行该操作
- 01-07 [系统问题] Win10--解决锁屏后会断网的问题
- 01-02 [系统技巧] Windows系统如何关闭防火墙保姆式教程,超详细
- 12-15 [玩转系统] 如何在 Windows 10 和 11 上允许多个 RDP 会话
- 12-15 [玩转系统] 查找 Exchange/Microsoft 365 中不活动(未使用)的通讯组列表
- 12-15 [玩转系统] 如何在 Windows 上安装远程服务器管理工具 (RSAT)
- 12-15 [玩转系统] 如何在 Windows 上重置组策略设置
- 12-15 [玩转系统] 如何获取计算机上的本地管理员列表?
- 12-15 [玩转系统] 在 Visual Studio Code 中连接到 MS SQL Server 数据库
- 12-15 [玩转系统] 如何降级 Windows Server 版本或许可证
- 12-15 [玩转系统] 如何允许非管理员用户在 Windows 中启动/停止服务
取消回复欢迎 你 发表评论:
- 精品推荐!
-
- 最新文章
- 热门文章
- 热评文章
[影视] 黑道中人 Alto Knights(2025)剧情 犯罪 历史 电影
[古装剧] [七侠五义][全75集][WEB-MP4/76G][国语无字][1080P][焦恩俊经典]
[实用软件] 虚拟手机号 电话 验证码 注册
[电视剧] 安眠书店/你 第五季 You Season 5 (2025) 【全10集】
[电视剧] 棋士(2025) 4K 1080P【全22集】悬疑 犯罪 王宝强 陈明昊
[软件合集] 25年6月5日 精选软件22个
[软件合集] 25年6月4日 精选软件36个
[短剧] 2025年06月04日 精选+付费短剧推荐33部
[短剧] 2025年06月03日 精选+付费短剧推荐25部
[软件合集] 25年6月3日 精选软件44个
[剧集] [央视][笑傲江湖][2001][DVD-RMVB][高清][40集全]李亚鹏、许晴、苗乙乙
[电视剧] 欢乐颂.5部全 (2016-2024)
[电视剧] [突围] [45集全] [WEB-MP4/每集1.5GB] [国语/内嵌中文字幕] [4K-2160P] [无水印]
[影视] 【稀有资源】香港老片 艺坛照妖镜之96应召名册 (1996)
[剧集] 神经风云(2023)(完结).4K
[剧集] [BT] [TVB] [黑夜彩虹(2003)] [全21集] [粤语中字] [TV-RMVB]
[实用软件] 虚拟手机号 电话 验证码 注册
[资源] B站充电视频合集,包含多位重量级up主,全是大佬真金白银买来的~【99GB】
[影视] 内地绝版高清录像带 [mpg]
[书籍] 古今奇书禁书三教九流资料大合集 猎奇必备珍藏资源PDF版 1.14G
[电视剧] [突围] [45集全] [WEB-MP4/每集1.5GB] [国语/内嵌中文字幕] [4K-2160P] [无水印]
[剧集] [央视][笑傲江湖][2001][DVD-RMVB][高清][40集全]李亚鹏、许晴、苗乙乙
[电影] 美国队长4 4K原盘REMUX 杜比视界 内封简繁英双语字幕 49G
[电影] 死神来了(1-6)大合集!
[软件合集] 25年05月13日 精选软件16个
[精品软件] 25年05月15日 精选软件18个
[绝版资源] 南与北 第1-2季 合集 North and South (1985) /美国/豆瓣: 8.8[1080P][中文字幕]
[软件] 25年05月14日 精选软件57个
[短剧] 2025年05月14日 精选+付费短剧推荐39部
[短剧] 2025年05月15日 精选+付费短剧推荐36部
- 最新评论
-
- 热门tag