如果你学过其他的高级语言一定对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. Vue局部组件和全局组件

    <!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" ...

  2. XML解析器

    1.非验证解析器 检查文档格式是否良好,如用浏览器打开XML文档时,浏览器会进行检查,即格式是否符合XML(可拓展标记语言)基本概念. 2.验证解析器 使用DTD(Document Type Defi ...

  3. SQL注入 (1) SQL注入类型介绍

    SQL注入 SQL注入介绍与分类 1. 什么是sql注入 通过把SQL命令插入到Web表单提交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令. 2. sql注入类型 按照注入 ...

  4. JAVA日志发展史

    JAVA日志发展史 第一阶段 2001年以前,Java是没有日志库的,打印日志全凭System.out和System.err 缺点: 产生大量的IO操作同时在生产环境中无法合理的控制是否需要输出 输出 ...

  5. CPU的中断

    目录 一.简介 二.具体 方式 硬中断 软中断 中断切换 网卡中断 三.中断查看 一.简介 中断其实就是由硬件或软件所发送的一种称为IRQ(中断请求)的信号.中断允许让设备,如键盘,串口卡,并口等设备 ...

  6. 实现input表单从右向左输入

    <input style="text-align:right"></input>

  7. supermarket(uaf)!!!!

    在这道题目我花费了很长的时间去理解,因为绕进了死圈子 例行检查我就不放了 关键处在于选择5 使用了realloc,却没有让结构体指针node-> description正确指回去 (11条消息) ...

  8. bjdctf_2020_babyrop2

    这道题是一道基本题,正因为它经典,所以需要重点记录一下. 这道题考察格式化字符串泄露canary,然后rop获得libc版本,之后拿到shell.拿到程序之后我们先检查一下保护... 开启了堆栈不可执 ...

  9. [BUUCTF]PWN——jarvisoj_tell_me_something

    jarvisoj_tell_me_something 附件 步骤: 例行检查,64位程序,开启了NX保护 运行一下程序,看看程序的大概流程 64位ida载入,shift+f12检索程序里的字符串 看到 ...

  10. CF753A Santa Claus and Candies 题解

    Content 圣诞老人有 \(n\) 颗糖果,他想把这些糖果分发给一些小孩子,并想要每个孩子都能得到不同的糖果数目.求能得到糖果的孩子的最大数目,以及他们各自得到的糖果数. 数据范围:\(1\leq ...