PowerShell中使用Like运算符配合通配符查找字符串例子

本文介绍在PowerShell中使用通配符来查找字符串,和通配符一起使用的是like运算符。

在PowerShell中的通配符是星号(*)和问号(?),这跟DOS系统中是一样的。要使用通配符在字符串中查找,可以使用like运算符。举例如下:

“123”是以1开头

代码如下:

PS C:\Users\splaybow> "123" -like "1*"
True

“123”是以1开头,3结尾

代码如下:

PS C:\Users\splaybow> "123" -like "1*3"
True

“123”包含2

代码如下:

PS C:\Users\splaybow> "123" -like "*2*"
True

“123”中包含1

代码如下:

PS C:\Users\splaybow> "123" -like "*1*"
True

“123”有3个字符

代码如下:

PS C:\Users\splaybow> "123" -like "???"
True

“123”有2个字符

代码如下:

PS C:\Users\splaybow> "123" -like "??"
False

通过以上一些例子,大家应该对-like运算符加通配符来实现字符串查找有比较深刻的认识了。

需要说明的是,like运算符的返回值是布尔值,即True或Flase。那它可以用于条件判断,比如if语句中,或者where-object语句中。下面的例子用于列出当前正在运行的程序中,程序名称是以字母“c”开头的。

代码如下:

PS C:\Users\spaybow> Get-Process | ?{$_.name -like "c*"}

Handles  NPM(K)    PM(K)      WS(K) VM(M)   CPU(s)     Id ProcessName
-------  ------    -----      ----- -----   ------     -- -----------
     24       5     2264       3424    48     0.02   5332 cmd
     46       6     1860       5208    63            1064 conhost
     62       8     2916       7736    81     0.27   5304 conhost
    637      12     2264       5148    84             512 csrss
    540      22     2904      29252   216             624 csrss

注:上面PowerShell语句中的问号(?)是where-object的别名。

关于PowerShell使用Like加通配符查找字符串,本文就介绍这么多,希望对您有所帮助,谢谢!

(0)

相关推荐

  • PowerShell中常用的一些特殊运算符介绍

    &,调用运算符. 语法:& <可执行文件路径> [<参数列表>] 举例: 复制代码 代码如下: $execPath="D:\Progra~1\FlashFXP\flashfxp.exe" $execArgs="-upload ftp://u:p@ip:21 " $execArgs=$execArgs+"-remotepath=`"/`" " $execArgs=$execArgs+&qu

  • PowerShell中的加法运算详解

    大家已经PowerShell中的运算符有了一定感性的认识.我们首先来学习"+"运算符.PowerShell定义了"+"运算符处理数值类型.字符串类型.数组类型和哈希表类型的具体行为.在进行数值计算时,"+"和平时的数值计算规则基本一样.不过需要注意,由于计算机内部表示不同数值类型时,使用的存储空间不同,因此这些类型都只能表示一个范围内的数据.在进行数值运算的过程中,如果计算结果超过了参与计算数值类型的值域时,PowerShell将会自动进行类型转

  • Windows Powershell 进行数学运算

    PowerShell支持如下算术运算符: 运算符 描述 例子 结果 + 把两个数值相加 6+2  8 - 把两个数值相减 6-2  4 - 将数值转换为对应的负值 -2+6 4 * 把两个数值相乘  6*2 12 / 把两个数值相除 6/2  3 % 返回除法运算的余数 6%4  2 运算符优先级 有一些因素决定了包含算术运算符的表达式如何被处理. 这些因素包括了: 运算符种类, 运算符的顺序, 是否有表达被括号括起来. 例如, 10+4/2返回结果12, 然而(10+4)/2返回结果却是7.

  • PowerShell中使用Like运算符配合通配符查找字符串例子

    本文介绍在PowerShell中使用通配符来查找字符串,和通配符一起使用的是like运算符. 在PowerShell中的通配符是星号(*)和问号(?),这跟DOS系统中是一样的.要使用通配符在字符串中查找,可以使用like运算符.举例如下: "123"是以1开头 复制代码 代码如下: PS C:\Users\splaybow> "123" -like "1*" True "123"是以1开头,3结尾 复制代码 代码如下:

  • PowerShell中使用Get-EventLog读取、筛选系统日志的例子

    本文介绍使用PowerShell读取系统日志,可以按日志名称.日志类型.时间等多个因素进行筛选.PowerShell中提供了一个叫Get-EventLog的cmdlet,使用它可以读取系统日志. 运行一下这个Get-EventLog的cmdlet试一下: 复制代码 代码如下: PS C:\Users\zhanghong> Get-EventLog -LogName System 噢!如果你感觉你被小编害了,cmd窗口一直在滚动个不停,那么按Ctrl+C先把它停下来.然后我解释一下,之所以发生这样

  • PowerShell中简单的自定义函数和调用函数例子

    在PowerShell中是否有函数?PowerShell是否可以自定义函数?PowerShell中如何自定义函数? 在PowerShell中,我们可以使用函数(function)来简化编程开发.在PowerShell中使用function这个关键词来标识一个函数.一个自定义的函数,由function关键词开始,然后用一对大括号来包括起整个函数体的内容. 我们先来看一下简单的PowerShell函数: 复制代码 代码如下: function Test-Function {     Write-Ho

  • PowerShell中定义多个变量并赋值的例子

    所谓赋值语句,小编在最早学C语言时就知道那就是"a=1;".这么多年来,虽然语言在变,但赋值语句基本没变过.但今天在看一串PowerShell代码的时候,这种理念被推翻了.小编看到了多变量同时赋值的语句. 小编看到的语句是这样的: 复制代码 代码如下: $a[0],$a[1]=$a[0],$a[1]; 大家来猜猜它是什么意思? 其实很好猜,第一眼看上去就像是把$a[0]和$a[1]这两个数组元素颠倒.而事实上的效果也是这样的.难道说这就是两个变量互换值的语句吗?我们知道在传统的编程语言

  • PowerShell中给函数参数设置帮助信息的例子

    本文介绍在PowerShell创建自定义函数时,如何为必选参数设置帮助信息. 下面这段代码,我们创建了一个test-function的函数.这个函数有一个参数p,它是必选参数.更进一步,我们为这个参数$p设置了一个helpMessage属性,这个属性的意思就是为这个必须参数提供帮助信息.因为是必选参数,所以在不输入值的情况下,函数是不会执行,而会提示为参数输入值的.如果用户不知道应该为这个参数输入什么值,那么这个HelpMessage有可能帮到忙. 复制代码 代码如下: PS C:\Users\

  • PowerShell使用正则表达式查找字符串实例

    本文介绍在PowerShell中使用-match运算符加正则表达式,进行字符串的搜索. match运算符,后面加上正则表达式,可以对字符串进行正则匹配查找.正则表达式功能强大,用于查找字符串时方便快捷.所以match运算符是我们经常要用到的一个知识.match查找的结果也是布尔值类型,即True或False,表示匹配成功或匹配失败. 下面举例说明: "123"是以"1"开头 复制代码 代码如下: PS C:\Users\spaybow> "123&q

  • PowerShell中使用通配符匹配文件路径的例子

    星号(*)在DOS的时代,就是通配符(英文叫Wildcard)的代表.从DOS到Windows,再到PowerShell,星号一如既往的坚守在通配符的岗位上. 简单看个例子: 复制代码 代码如下: PS [zhanghong] >dir d:\*.vbs    目录: D:\ Mode                LastWriteTime     Length Name ----                -------------     ------ ---- -a---      

  • PowerShell中查找字符串位置的IndexOf函数使用实例

    本文介绍在PowerShell中使用字符串的IndexOf函数,来查询一个字符串中是否存在另一个字符串,如果存在那么它在什么位置. IndexOf函数是String对象的静态方法,用于查找一个字符串在另一个字符串中的位置.如果查寻字符串在被查询字符串中不存在,则返回值为-1.如果存在,则返回查寻字符串所处的位置,位置是从0开始的. 下面看看例子: 在"123"中不存在"13" 复制代码 代码如下: PS C:\Users\spaybow> "123&

  • PowerShell中按修改时间查找文件的方法

    本文介绍一个PowerShell中按文件的的修改时间来查找文件,这里要用到文件对象的LastWriteTime这个属性. 在很多时候,我都都需要按修改时间来查找文件.比如一个网站,近期发现被人挂马了,我们可能会看看近期的备份是否有被修改,从而确定一下被黑的大致时间段.有了这个时间段后,我们要看看这段时间之内有哪些文件被修改过,有哪些新增上来的文件,很有可能黑客留下下的一句话木马,甚至大马就在里面. 下面我们来看看PowerShell中如何根据文件修改时间来查找文件. 小编先来看看d盘根目录下有些

随机推荐