Powershell ——findstr
从文件中找出关键字
$colItems = Get-ChildItem d:\test #定义文件夹的路径 foreach ($i in $colItems) #循环获取文件夹下的txt文件 { $filecontent= Get-Content $i.fullName | findstr /i "a" #获取txt文件的内容 并找到数字a write-host $filecontent $i.fullname} #输出到屏幕上
$all=$members | findstr /i "GroupWendy Groupgaga" 可以放在一个条件中
$w=$members | findstr /i "GroupWendy"
#筛选群组,用findstr /i为忽略大小写参数 findstr /i "^Groupgaga" 表示:查询以Groupgaga开头的string
$g=$members | findstr /i "^Groupgaga"
参数 | 说明 |
/b | 如果它位于行首,匹配的文本模式。 |
/e | 如果它位于行尾,匹配的文本模式。 |
/l | 进程文字搜索字符串。 |
/r | 进程作为正则表达式搜索字符串。 这是默认设置。 |
/s | 搜索当前目录及其所有子目录。 |
/i | 搜索字符串时,将忽略大小写的字符。 |
/x | 打印与完全匹配的行。 |
/v | 打印只显示不包含匹配的行。 |
/n | 打印每个匹配的行的行的号。 |
/m | 如果文件包含匹配项,则打印的文件名。 |
/o | 每个匹配行之前打印字符偏移量。 |
/p | 跳过的不可打印字符的文件。 |
开 / 关 [行] | 不跳过具有脱机属性设置的文件。 |
/f: <File> | 从指定的文件中获取文件列表。 |
<String> 状态 | 使用指定的文本与搜索文本字符串。 |
/g: <File> | 获取搜索字符串中指定的文件。 |
/d: <DirList> | 搜索指定的目录列表。 每个目录之间必须用分号 (;) 例如 dir1;dir2;dir3 . |
/a: <ColorAttribute> | 指定两个十六进制数字的颜色属性。 类型 color /? 有关其他信息。 |
<Strings> | 指定要搜索的文件名中的文本。 必需。 |
[<Drive>:][<Path>] <FileName> [...] | 指定的位置和文件或要搜索的文件。 至少一个文件的名称是必需的。 |
/? | 在命令提示符下显示帮助。 |
元字符 | 值 |
. | 任何字符通配符: |
* | 前一字符或类的重复: 零个或多个实例 |
^ | 行位置: 行的开头 |
$ | 行位置: 行的结尾 |
[类] | 字符类: 集合中的任何一个字符 |
[^ 类] | 反类: 不在集合中的任何一个字符 |
[x-] y | 范围: 内的任何字符指定范围 |
\x | 转义: 元字符 x 的文字用途 |
\ < 字符串 | 字位置: 字首 |
string\ > | 字位置: 单词的结尾 |