为了账号安全,请及时绑定邮箱和手机立即绑定

初识Python

廖雪峰 移动开发工程师
难度入门
时长 5小时 0分
学习人数
综合评分9.43
3762人评价 查看评价
9.7 内容实用
9.4 简洁易懂
9.2 逻辑清晰
  • gc
    结合条件处理 ForEach-Object的处理可以包含任意Powershell脚本,当然也包括条件语句 Get-WmiObject Win32_Service | ForEach-Object { if ($_.ProcessId -gt 3000) { "{0}({1})" -f $_.DisplayName,$_.ProcessID} } Windows Presentation Foundation Font Cache 3.0.0.0(5408) Microsoft Network Inspection(5260) BranchCache(4112) Windows Modules Installer(7656)
    查看全部
  • gc
    Powershell管道就像流水线,对于数据的处理是一个环节接着一个环节,如果你想在某一环节对流进来的数据逐个细致化的处理,可是使用ForEach-Object,$_ 代表当前的数据。 对管道对象逐个处理 如果使用Get-WmiObject 获取系统中的服务,为了排版可能会也会使用Format-Table对结果进行表格排版。 PS C:Powershell> Get-WmiObject Win32_Service | Format-Table status,DisplayName -AutoSize status DisplayName ------ ----------- OK Adobe Acrobat Update Service OK Application Experience 但是如果想对每个服务进行更定制化的处理可是使用ForEach-Object PS C:Powershell> Get-WmiObject Win32_Service | ForEach-Object {"Name:"+ $_.Disp layName, ", Is ProcessId more than 100:" + ($_.ProcessId -gt 100)} Name:Adobe Acrobat Update Service , Is ProcessId more than 100:True Name:Application Experience , Is ProcessId more than 100:False
    查看全部
  • gc
    同时处理多个值 Switch支持对集合所有元素进行匹配,得到1到100以内3的倍数的数字 $value=1..100 switch ($value){ {$_%3 -eq 0}{$_} }
    查看全部
  • gc
    在字符串匹配中,比通配符功能更强大是正则表达式,Powershell的Switch语句也支持,真是太棒了。当然需要给Switch关键字指定选项-regex $mail="www@mossfly.com" #使用通配符 switch -regex ($mail) { "^www" {"www打头"} "com$" {"com结尾" } "d{1,3}.d{1,3}.d{1,3}.d{1,3}" {"IP地址"} } #www打头 #com结尾
    查看全部
  • gc
    使用通配符 字符串非常特殊,可是使用通配符,幸运的是Powershell也支持,果然Power啊。但是在Switch语句后要指定 -wildcard 选项 $domain="www.mossfly.com" #使用通配符 switch -wildcard($domain) { "*" {"匹配'*'"} "*.com" {"匹配*.com" } "*.*.*" {"匹配*.*.*"} } 匹配'*' 匹配*.com 匹配*.*.*
    查看全部
  • gc
    大小写敏感 怎样在比较字符串时能够恢复为大小写敏感模式,Switch有一个-case 选项,一旦指定了这个选项,比较运算符就会从-eq 切换到 -ceq,即大小写敏感比较字符串: $domain="www.mossfly.com" #大小写敏感 switch -case ($domain) { "Www.moSSfly.com" {"Ok 1"} "www.MOSSFLY.com" {"Ok 2" } "www.mossfly.com" {"Ok 3"} } #Ok 3
    查看全部
  • gc
    比较字符串 之前的条件比较的都是数字,接下来比较字符串,默认的条件判断为-eq ,我们知道在Powershell中字符串的使用-eq比较大小写不敏感,所以才有下面的例子: $domain="www.mossfly.com" switch($domain) { "Www.moSSfly.com" {"Ok 1"} "www.MOSSFLY.com" {"Ok 2" } "WWW.mossfly.COM" {"Ok 3"} } Ok 1 Ok 2 Ok 3
    查看全部
  • gc
    多个条件匹配 如果case中有多个条件匹配,那么每个匹配的条件都会进行处理,例如: $value=2 # 使用 Switch 测试取值范围 switch($value) { {$_ -lt 5 } { "小于5" } {$_ -gt 0 } { "大于0" } {$_ -lt 100}{ "小于100"} Default {"没有匹配条件"} } #小于5 #大于0 #小于100 如果碰到匹配条件时只处理一次,可以使用Break关键字 $value=99 # 使用 Switch 测试取值范围 switch($value) { {$_ -lt 5 } { "小于5"; break} {$_ -gt 0 } { "大于0"; break} {$_ -lt 100} { "小于100"; break} Default {"没有匹配条件"} } #大于0
    查看全部
  • gc
    测试取值范围 使用 Switch 时缺省的比较运算符为 -eq 等于,你也可以自己定制比较条件,将条件放在花括号中,必须保证条件表达式的返回值为布尔类型”$True”或”$False” $value=18 # 使用 Switch 测试取值范围 switch($value) { {$_ -lt 10} {"小于10"} 10 {"等于10"} {$_ -gt 10} {"大于10"} } #输出 #大于10
    查看全部
  • gc
    如果语句中有多路分支,使用IF-ELSEIF-ELSE不友好,可以使用Switch,看起来比较清爽一点。 下面的例子将If-ElseIF-Else转换成Switch语句 # 使用 IF-ElseIF-Else If( $value -eq 1 ) { "Beijing" } Elseif( $value -eq 2) { "Shanghai" } Elseif( $value -eq 3 ) { "Tianjin" } Else { "Chongqing" } # 使用 Switch switch($value) { 1 {"Beijing"} 2 {"Shanghai"} 3 {"Tianjin"} 4 {"Chongqing"} } 1
    查看全部
  • gc
    If(条件满足){ 如果条件满足就执行代码 } Else { 如果条件不满足 } 条件判断必须放在圆括号中,执行的代码必须紧跟在后面的花括号中。 PS C:Powershell> $n=8 PS C:Powershell> if($n -gt 15) {"$n 大于 15 " } PS C:Powershell> if($n -gt 5) {"$n 大于 5 " } 8 大于 5 PS C:Powershell> if($n -lt 0 ){"-1" } elseif($n -eq 0){"0"} else {"1"} 1
    查看全部
  • gc
    使用别名 因为Where-Object的使用概率比较高,所以有一个很形象的别名 ? 可以使用: PS C:Powershell> Get-Service | ? {$_.Name -like "B*"} Status Name DisplayName ------ ---- ----------- Running BDESVC BitLocker Drive Encryption Service Running BFE Base Filtering Engine Running BITS Background Intelligent Transfer Ser... Stopped Browser Computer Browser Stopped bthserv Bluetooth Support Service
    查看全部
  • gc
    get-process|?{$_.company -like '*microsoft*' -and $_.id -gt 3000} 两个条件
    查看全部
  • gc
    根据company过滤所有产品发布者以”Microsoft”打头的进程: PS C:Powershell> Get-Process | Where-Object {$_.company -like '*Microsoft*' }| select Name,Description,Company msseces Microsoft Security Clie... Microsoft Corporation notepad 记事本 Microsoft Corporation ONENOTEM Microsoft OneNote Quick... Microsoft Corporation OUTLOOK Microsoft Outlook Microsoft Corporation powershell Windows PowerShell Microsoft Corporation prevhost Preview Handler Surroga... Microsoft Corporation RDCMan RDCMan Microsoft Corporation SearchProtocolHost Microsoft Windows Searc... Microsoft Corporation taskhost Windows 任务的主机进程 Microsoft Corporation
    查看全部
  • gc
    根据进程名过滤所有记事本进程。 PS C:Powershell> Get-Process | Where-Object {$_.Name -eq "notepad"} Handles NPM(K) PM(K) WS(K) VM(M) CPU(s) Id ProcessName ------- ------ ----- ----- ----- ------ -- ----------- 158 7 8800 37264 114 18.41 6204 notepad
    查看全部

举报

0/150
提交
取消
课程须知
如果您了解程序设计的基本概念,会简单使用命令行,了解中学数学函数的概念,那么对课程学习会有很大的帮助,让您学起来得心应手,快速进入Python世界。
老师告诉你能学到什么?
通过本课程的学习,您将学会搭建基本的Python开发环境,以函数为基础编写完整的Python代码,熟练掌握Python的基本数据类型以及list和dict的操作。

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!