文章目录
- windows find findstr 命令学习
- find 命令
- 1. find 命令简介
- 2. 使用语法及说明
- 2.1 语法格式
- 2.2 参数说明
 
- 3. 案例
- 3.1 查看指定端口是否监听
- 3.2 查看指定字符并忽略大小写
- 3.3 统计包含指定字符串的行数
- 3.4 显示行号
- 3.5 查找结果反选
 
 
- findstr 命令
- 1. findstr 命令简介
- 2. 使用语法及说明
- 2.1 语法格式
- 2.2 参数说明
- 2.3 正则参数说明
 
- 3. 案例
- 3.1 查找包含字符串的行
- 3.2 查找包含字符串的行并忽略大小写
- 3.3 多字符条件查找
- 3.4 使用正则查找字符串
- 3.5 获取反选内容
 
 
 
windows find findstr 命令学习
find 命令
1. find 命令简介
find命令用于查找文档中的特定字符和数字及行号, 例如我们在阅读文档时, 使用的快捷键Ctrl + F来查找是一个效果, 经过find查找的字符也可以重定向到一个文本文档里面去, 提取特定的字符, 来进行文档的整合。
find命令好像不支持正则,加强版可使用findstr
2. 使用语法及说明
2.1 语法格式
用法:find [参数] [字符串] [磁盘:[目录]文件]
FIND [/V] [/C] [/N] [/I] [/OFF[LINE]] “string” [[drive:][path]filename[ …]]

2.2 参数说明
| 参数 | 说明 | 
|---|---|
| /V | 显示所有未包含指定字符串的行。 | 
| /C | 仅显示包含字符串的行数。 | 
| /N | 显示行号。 | 
| /I | 搜索字符串时忽略大小写。 | 
| /OFF[LINE] | 不要跳过具有脱机属性集的文件。 | 
| “string” | 指定要搜索的文本字符串。 | 
| [drive:][path]filename | 指定要搜索的文件。 | 
3. 案例
3.1 查看指定端口是否监听
C:\Users\Dxx\Desktop\Windows>netstat -ano | find "17400"
  TCP    192.168.137.1:7608     192.168.137.104:22     ESTABLISHED     17400

3.2 查看指定字符并忽略大小写
C:\Users\Dxx\Desktop\Windows>netstat -ano | find /I "listen"
  TCP    0.0.0.0:135            0.0.0.0:0              LISTENING       1576
  TCP    0.0.0.0:445            0.0.0.0:0              LISTENING       4
  TCP    0.0.0.0:902            0.0.0.0:0              LISTENING       5892
  ...

3.3 统计包含指定字符串的行数
C:\Users\Dxx\Desktop\Windows>netstat -ano | find /I /C "listen"
34

3.4 显示行号
C:\Users\Dxx\Desktop\Windows>netstat -ano | find /N "17400"
[41]  TCP    192.168.137.1:7608     192.168.137.104:22     ESTABLISHED     17400

3.5 查找结果反选
C:\Users\Dxx\Desktop\Windows>netstat -ano | find /I /V "listen"
活动连接
  协议  		本地地址          		外部地址        		状态           PID
  TCP    127.0.0.1:1355         127.0.0.1:1356         ESTABLISHED     15872
  TCP    127.0.0.1:1356         127.0.0.1:1355         ESTABLISHED     15872
  TCP    127.0.0.1:2559         127.0.0.1:2560         ESTABLISHED     11028
  TCP    127.0.0.1:2560         127.0.0.1:2559         ESTABLISHED     11028
  ...

findstr 命令
1. findstr 命令简介
findstr是window系统自带的命令,用途是查找指定的一个或多个文件文件中包含某些特定字符串的行,并将该行完整的信息打印出来,或者打印查询字符串所在的文件名。通过管道符与其他命令结合使用,其用途和用法都类似linux下的grep命令,用于查找过滤指定字符串。
2. 使用语法及说明
2.1 语法格式
用法:find [参数] [字符串] [磁盘:[目录]文件]
FINDSTR [/B] [/E] [/L] [/R] [/S] [/I] [/X] [/V] [/N] [/M] [/O] [/P] [/F:file]
        [/C:string] [/G:file] [/D:dir list] [/A:color attributes] [/OFF[LINE]]
        strings [[drive:][path]filename[ ...]]

2.2 参数说明
| 参数 | 说明 | 
|---|---|
| /B | 在一行的开始配对模式。 | 
| /E | 在一行的结尾配对模式。 | 
| /L | 按字使用搜索字符串。 | 
| /R | 将搜索字符串作为一般表达式使用。 | 
| /S | 在当前目录和所有子目录中搜索匹配文件。 | 
| /I | 指定搜索不分大小写。 | 
| /X | 打印完全匹配的行。 | 
| /V | 只打印不包含匹配的行。 | 
| /N | 在匹配的每行前打印行数。 | 
| /M | 如果文件含有匹配项,只打印其文件名。 | 
| /O | 在每个匹配行前打印字符偏移量。 | 
| /P | 忽略有不可打印字符的文件。 | 
| /OFF[LINE] | 不跳过带有脱机属性集的文件。 | 
| /A:attr | 指定有十六进位数字的颜色属性。请见 “color /?” | 
| /F:file | 从指定文件读文件列表 (/ 代表控制台)。 | 
| /C:string | 使用指定字符串作为文字搜索字符串。 | 
| /G:file | 从指定的文件获得搜索字符串。 (/ 代表控制台)。 | 
| /D:dir | 查找以分号为分隔符的目录列表 | 
| strings | 要查找的文字。 | 
| [drive:][path]filename | 指定要查找的文件。 | 
注:
 除非参数有 /C 前缀,请使用空格隔开搜索字符串。
 例如: 'FINDSTR "hello there" x.y' 在文件 x.y 中寻找 "hello" 或 "there"。'FINDSTR /C:"hello there" x.y' 文件 x.y 寻找 "hello there"。
2.3 正则参数说明

| 参数 | 说明 | 
|---|---|
| . | 通配符: 任何字符 | 
| * | 重复: 以前字符或类出现零或零以上次数 | 
| ^ | 行位置: 行的开始 | 
| $ | 行位置: 行的终点 | 
| [class] | 字符类: 任何在字符集中的字符 | 
| [^class] | 补字符类: 任何不在字符集中的字符 | 
| [x-y] | 范围: 在指定范围内的任何字符 | 
| \x | Escape: 元字符 x 的文字用法 | 
| <xyz | 字位置: 字的开始 | 
| xyz> | 字位置: 字的结束 | 
3. 案例
3.1 查找包含字符串的行
测试文件
a.txtaa123
bb234
cc345
C:\Users\D\Desktop>findstr aa a.txt
aa123

3.2 查找包含字符串的行并忽略大小写
使用
/I参数忽略大小写测试文件
a.txtaa123
bb234
cc345
AA111
BB222
CC333
C:\Users\D\Desktop>more a.txt
aa123
bb234
cc345
AA111
BB222
CC333
C:\Users\D\Desktop>findstr /I aa a.txt
aa123
AA111

3.3 多字符条件查找
除非参数有 /C 前缀,请使用空格隔开搜索字符串。
 例如:
'FINDSTR "hello there" x.y'在文件x.y中寻找"hello"或"there"。'FINDSTR /C:"hello there" x.y'文件x.y寻找"hello there"。测试文件
a.txtaa 123
123
bb 234
cc 345
AA 111
BB 222
CC 333
C:\Users\D\Desktop>more a.txt
aa 123
123
bb 234
cc 345
AA 111
BB 222
CC 333
C:\Users\D\Desktop>findstr "aa 123" a.txt
aa 123
123
C:\Users\D\Desktop>findstr /C:"aa 123" a.txt
aa 123

3.4 使用正则查找字符串
使用
/R参数+正则查找内容测试文件
a.txtaa 123
123
bb 234
cc 345
AA 111
BB 222
CC 333
AAAAA
BBBBB
CCCCC
C:\Users\D\Desktop>more a.txt
aa 123
123
bb 234
cc 345
AA 111
BB 222
CC 333
AAAAA
BBBBB
CCCCC
C:\Users\D\Desktop>findstr /R "^aa" a.txt
aa 123
C:\Users\D\Desktop>findstr /R "22$" a.txt
BB 222
C:\Users\D\Desktop>findstr /R "[1-9]" a.txt
aa 123
123
bb 234
cc 345
AA 111
BB 222
CC 333
C:\Users\D\Desktop>findstr /R "[a-z]" a.txt
aa 123
bb 234
cc 345
AA 111
BB 222
CC 333
AAAAA
BBBBB
CCCCC

3.5 获取反选内容
使用
/V参数测试文件
a.txtaa 123
123
bb 234
cc 345
AA 111
BB 222
CC 333
AAAAA
BBBBB
CCCCC
C:\Users\D\Desktop>more a.txt
aa 123
123
bb 234
cc 345
AA 111
BB 222
CC 333
AAAAA
BBBBB
CCCCC
C:\Users\D\Desktop>findstr /V "aa" a.txt
123
bb 234
cc 345
AA 111
BB 222
CC 333
AAAAA
BBBBB
CCCCC

 
  
  
  
  



















