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 ...
随机推荐
- 并行Louvain社区检测算法
因为在我最近的科研中需要用到分布式的社区检测(也称为图聚类(graph clustering))算法,专门去查找了相关文献对其进行了学习.下面我们就以这篇论文IPDPS2018的文章[1]为例介绍并行 ...
- pipeline input步骤
目录 一.简介 二.input步骤复杂用法 三.获取上游pipeline信息 四.超时中止 一.简介 执行imput步骤会暂停pipeline,直到用户输入参数.这是一种特殊的参数化pipeline的 ...
- 车载以太网第二弹|测试之实锤-1000BASE-T1 IOP测试实践
背景 车载以太网通信技术在汽车行业的应用速度远超预期,去年本土OEM已经上市了应用100BASE -T1的车型.今年,应用1000BASE -T1的车型预计也将会量产上市.针对测试而言,带来另外一个难 ...
- java中栈,堆,方法区
最近在看面试题复习javaee,所以在这里对栈,堆,方法区做一下整理 参考了https://www.cnblogs.com/hqji/p/6582365.html 1.栈 每个线程包含一个栈区,栈中只 ...
- 对QuerySet的理解
1. 如何通过Django的Model操作数据库? 在Django的Model中,QuerySet是一个很重要的概念.因为我们同数据库的所有查询以及更新交互都是通过它来完成的. 2. Django的M ...
- Nginxre quest_time 和upstream_response_time
nginx优化之request_time 和upstream_response_time差别 https://www.cnblogs.com/dongruiha/p/7007801.html http ...
- Java 中的5个代码性能提升技巧,最高提升近10倍
文章持续更新,可以关注公众号程序猿阿朗或访问未读代码博客. 本文 Github.com/niumoo/JavaNotes 已经收录,欢迎Star. 这篇文章介绍几个 Java 开发中可以进行性能优化的 ...
- JAVA 接口返回JSON格式转换类
使用了Lombok插件 Result.java package com.utils; import com.jetsum.business.common.constant.Constant; impo ...
- 【九度OJ】题目1023:EXCEL排序 解题报告
[九度OJ]题目1023:EXCEL排序 解题报告 标签(空格分隔): 九度OJ [LeetCode] http://ac.jobdu.com/problem.php?pid=1023 题目描述: E ...
- 【LeetCode】901. Online Stock Span 解题报告(Python)
作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 单调递减栈 日期 题目地址:https://leet ...