如果你学过其他的高级语言一定对Switch不陌生,下面讲解一下基本语法。

例1:

 1 $n=Get-Random 5
2 $s='小明考试得分'
3 switch($n)
4 {
5 0 {$m=30}
6 1 {$m=50}
7 2 {$m=70}
8 3 {$m=90}
9 4 {$m=100}
10 5 {$m=120}
11 }
12 $s+$m

例2:

 1 $n=Get-Random 100
2 $s='小明考试得分'
3 switch($n)
4 {
5 {$_ -lt 60} {$m='不及格'}
6 {$_ -ge 60 -and $_ -lt 70} {$m='及格'}
7 {$_ -ge 70 -and $_ -lt 90} {$m='良'}
8 {$_ -ge 90 -and $_ -lt 120} {$m='优'}
9 {$_ -eq 120} {$m='满分'}
10 }
11 $s+$n+' 评级:'+$m

当然也可以配合使用正则表达式

1 $n=Get-Random 100
2 $s='小明考试得分'
3 switch ($n)
4 {
5 {$_ -match '[0-6][0-9]|^0$'} {$m='不及格'}
6 default{$m='及格'}
7 }
8 $s+$n+' 评级:'+$m

当然你觉得麻烦还可以开启正则表达式参数

1 $n=Get-Random 100
2 $s='小明考试得分'
3 switch -Regex($n)
4 {
5 '[0-6][0-9]|^0$' {$m='不及格'}
6 default{$m='及格'}
7 }
8 $s+$n+' 评级:'+$m

开启通配符模式

1 $s='www.baidu.com'
2 switch -Wildcard($s)
3 {
4 'www*' {'匹配'}
5 default{'不匹配'}
6 }

开启精确模式,当前模式下必须条件完美匹配,才能符合条件语句

1 $s='www.baidu.com'
2 switch -Exact($s)
3 {
4 'www' {'匹配'}
5 default{'不匹配'}
6 }

开启大小写敏感模式,当前模式下,区分大小写(默认是不区分大小写)

1 $s='A'
2 switch -CaseSensitive($s)
3 {
4 'a' {'匹配'}
5 default{'不匹配'}
6 }

也可以多个参数同时存在

1 $s='A'
2 switch -CaseSensitive -Exact($s)
3 {
4 'A' {'匹配'}
5 default{'不匹配'}
6 }

文件模式,当前模式下匹配对应行

1 1..30|Out-File 1.txt
2 $f='1.txt'
3 switch -Regex -File($f)
4 {
5 '5' {'匹配 '+$_}
6 default{'不匹配 '+$_}
7 }

和文件模式一样,支持循环结构的匹配

1 $n=1..99
2 switch ($n)
3 {
4 {$_ -match 5} {$_}
5 }

PowerShell 【Switch篇】的更多相关文章

  1. Powershell Switch 条件

    Powershell Switch 条件 6 21 1月, 2012  在 Powershell tagged Powershell教程/ 分支/ 字符串/ 数字/ 条件by Mooser Lee 本 ...

  2. PowerShell 教程

    随笔分类 - 教程 转载自:https://www.cnblogs.com/XiaoCY/category/1065141.html PowerShell 管道符之Where-Object的使用方法 ...

  3. Windows PowerShell 入門(5)-制御構文

    Windows PowerShellにおける制御構文について学びます.数ある制御構文の中でもSwitch文は.他の言語に比べ豊富な機能が用意されています. 対象読者 Windows PowerShel ...

  4. Linux系统管理员必备参考资料下载汇总

    Linux系统管理员必备: Linux系统管理工具包系列汇总 Linux系统管理员必看 VanDyke SecureCRT 6.1.3 附特别文件 鸟哥的Linux私房菜 基础学习篇 (第二版) 高清 ...

  5. TGL站长关于常见问题的回复

    问题地址: http://www.thegrouplet.com/thread-112923-1-1.html 问题: 网站配有太多的模板是否影响网站加载速度 月光答复: wp不需要删除其他的模板,不 ...

  6. Powershell渗透测试系列–进阶篇

    原文来自:https://bbs.ichunqiu.com/thread-41561-1-1.html i春秋作家:anyedt 0×00 引言 经过基础篇的学习我们已经对powershell有了一个 ...

  7. PowerShell中的一个switch的例子

    在这个例子中, 应该注意 Switch语句里对数字范围条件的使用 break的使用 字符串的拼接 数组的声明   ) foreach ($element in $array) { switch($el ...

  8. PowerShell攻防进阶篇:nishang工具用法详解

    PowerShell攻防进阶篇:nishang工具用法详解 导语:nishang,PowerShell下并肩Empire,Powersploit的神器. 开始之前,先放出个下载地址! 下载地址:htt ...

  9. PHP丨PHP基础知识之条件语SWITCH判断「理论篇」

    Switch在一些计算机语言中是保留字,其作用大多情况下是进行判断选择.以PHP来说,switch(开关语句)常和case break default一起使用 典型结构 switch($control ...

随机推荐

  1. Mysql B-Tree和B+Tree索引

    Mysql B-Tree和B+树索引 Mysql加快数据查找使用B-Tree数据结构存储索引数据,InnoDB存储引擎实际使用B+Tree.下面首先介绍下B-Tree和B+Tree的区别: 一.B树和 ...

  2. 1.Java语言基础

    一:java语言介绍 (1). 1991年出现,1995年5月正式发布 出生地:SUN  创始人:James Gosling  2009年4月被Oracle收购 目前最新的版本2018年3月v10.0 ...

  3. Apifox(1)比postman更优秀的接口自动化测试平台

    Apifox介绍 Apifox 是 API 文档.API 调试.API Mock.API 自动化测试一体化协作平台,定位 Postman + Swagger + Mock + JMeter.通过一套系 ...

  4. 【JavaWeb】【学习】【过滤器】Filter 的简单应用

    实现效果 在编辑框中输入暗号:如果暗号正确,则跳转到正确页面:如果暗号错误,则跳转到错误界面. [入口界面] [错误界面] [成功界面] [项目结构] JSP文件 本练习有两个jsp页面 页面1:in ...

  5. 【Spark】【RDD】从HDFS创建RDD

    1.在HDFS根目录下创建目录(姓名学号) hdfs dfs -mkdir /zwj25 hdfs dfs -ls / 访问 http://[IP]:50070 2.上传本地文件到HDFS hdfs ...

  6. 安霸pipeline简述之rgb域的处理

    RGB域处理模块的详细介绍: RGB域的处理主要是demosaic,color_correction,tone_curve(类似于gamma曲线).   Demosaic:此模块将bayer Patt ...

  7. 云原生应用管理,像管理手机APP一样管理企业应用

    我们在使用智能手机的时候,手机APP从应用市场一键安装,安装好即点即用,当有新版本一键升级,如果不想用了长按图标删除,整个过程非常简单,小朋友都能熟练掌握.而对于企业应用,由于结构复杂.可用性要求高. ...

  8. Nginx 架构基础

    1 Nginx请求处理流程 2 Nginx进程结构 3 Nginx进程管理:信号 3.1 Master进程 监控worker进程 CHLD 管理worker进程 接收信号 TERM,INT QUIT ...

  9. centos配置 显示中文

    目录 一.简介 二.操作 一.简介 不显示中文,出现这个情况一般是由于没有安装中文语言包,或者设置的默认语言有问题导致的. 二.操作 1.查看当前系统语言 登陆linux系统打开操作终端之后,输入 e ...

  10. java中栈,堆,方法区

    最近在看面试题复习javaee,所以在这里对栈,堆,方法区做一下整理 参考了https://www.cnblogs.com/hqji/p/6582365.html 1.栈 每个线程包含一个栈区,栈中只 ...