PowerShell 【Switch篇】
如果你学过其他的高级语言一定对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篇】的更多相关文章
- Powershell Switch 条件
Powershell Switch 条件 6 21 1月, 2012 在 Powershell tagged Powershell教程/ 分支/ 字符串/ 数字/ 条件by Mooser Lee 本 ...
- PowerShell 教程
随笔分类 - 教程 转载自:https://www.cnblogs.com/XiaoCY/category/1065141.html PowerShell 管道符之Where-Object的使用方法 ...
- Windows PowerShell 入門(5)-制御構文
Windows PowerShellにおける制御構文について学びます.数ある制御構文の中でもSwitch文は.他の言語に比べ豊富な機能が用意されています. 対象読者 Windows PowerShel ...
- Linux系统管理员必备参考资料下载汇总
Linux系统管理员必备: Linux系统管理工具包系列汇总 Linux系统管理员必看 VanDyke SecureCRT 6.1.3 附特别文件 鸟哥的Linux私房菜 基础学习篇 (第二版) 高清 ...
- TGL站长关于常见问题的回复
问题地址: http://www.thegrouplet.com/thread-112923-1-1.html 问题: 网站配有太多的模板是否影响网站加载速度 月光答复: wp不需要删除其他的模板,不 ...
- Powershell渗透测试系列–进阶篇
原文来自:https://bbs.ichunqiu.com/thread-41561-1-1.html i春秋作家:anyedt 0×00 引言 经过基础篇的学习我们已经对powershell有了一个 ...
- PowerShell中的一个switch的例子
在这个例子中, 应该注意 Switch语句里对数字范围条件的使用 break的使用 字符串的拼接 数组的声明 ) foreach ($element in $array) { switch($el ...
- PowerShell攻防进阶篇:nishang工具用法详解
PowerShell攻防进阶篇:nishang工具用法详解 导语:nishang,PowerShell下并肩Empire,Powersploit的神器. 开始之前,先放出个下载地址! 下载地址:htt ...
- PHP丨PHP基础知识之条件语SWITCH判断「理论篇」
Switch在一些计算机语言中是保留字,其作用大多情况下是进行判断选择.以PHP来说,switch(开关语句)常和case break default一起使用 典型结构 switch($control ...
随机推荐
- 12.Vue.js 表单
这节我们为大家介绍 Vue.js 表单上的应用. 你可以用 v-model 指令在表单控件元素上创建双向数据绑定. <div id="app"> <p>in ...
- [BUUCTF]PWN——[ZJCTF 2019]EasyHeap
[ZJCTF 2019]EasyHeap 附件 步骤: 例行检查,64位程序 试运行一下看看程序大概执行的情况,经典的堆块的菜单 64位ida载入,首先检索字符串,发现了读出flag的函数 看一下每个 ...
- android 基于dex的插件化开发
安卓里边可以用DexClassLoader实现动态加载dex文件,通过访问dex文件访问dex中封装的方法,如果dex文件本身还调用了native方法,也就间接实现了runtime调用native方法 ...
- C# 脚本
有些情况下,需要在程序运行期间动态执行C#代码,比如,将某些经常改变的算法保存在配置文件中,在运行期间从配置文件中读取并执行运算.这时可以使用C#脚本来完成这些工作. 使用C#脚本需要引用库Micro ...
- 第二周Python笔记之 变量的三元运算
如果变量a小于b,则d的值取a变量的值,否则取c变量的值
- Hibernate 批量update数据时,怎么样做可以回滚,
Hibernate 批量update数据时,怎么样做可以回滚, 1.serviceManagerDaoImpl代码里对异常不进行try,catch抛出, 2.或者抛出throw new Runtime ...
- ligerUI问题
1.checkboxColWidth:990,Grid的复选框的宽度设置为什么不起作用. 2.当grid出现横线不对齐时,可以设置detailColWidth:90,属性进行设置.此属性好像只是针对复 ...
- 简单聊聊mysql的脏读、不可重复读
最近,在一次 mysql 死锁的生产事故中,我发现,关于 mysql 的锁.事务等等,我所知道的东西太碎了,所以,我试着用几个例子将它们串起来.具体做法就是通过不断地问问题.回答问题,再加上" ...
- JAVAWEB项目处理XSS漏洞攻击处理方案
对页面传入的参数值进行过滤,过滤方法如下 public static String xssEncode(String s) { if (s == null || s.equals("&quo ...
- JS(JQuery) 省市区三级联动下拉选择
引入 area.js /* * 全国三级城市联动 js版 */ function Dsy(){ this.Items = {}; } Dsy.prototype.add = function(id,i ...