欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

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

程序员文章站 2022-05-21 19:34:19
本文介绍在powershell中使用通配符来查找字符串,和通配符一起使用的是like运算符。 在powershell中的通配符是星号(*)和问号(?),这跟dos...

本文介绍在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加通配符查找字符串,本文就介绍这么多,希望对您有所帮助,谢谢!