findstr命令
玩服务器,很多时候是linux,常用grep,偶尔也会遇到windows服务器,要做自动化,findstr也很常用。
findstr用来搜索匹配字符串的文件。
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[ ...]]
常用参数:
S:在当前目录和子目录中搜索匹配的文件
X:打印出完全匹配要搜索的字符串的行
N:打印匹配字符串行的同时加上行号
I:搜索时不区分大小写
M:匹配字符串时打印出该文件名
注意/C:string的用法。比如说你想在当前目录下搜索包含有“I'll be the bright and black that's making you run”这句话文件,输出文件名。
findstr /M /C:"I'll be the bright and black that's making you run" .*
不加/C:这表示只要字符串中的任意子串符合即可。
FINDSTR命令的详细帮助:
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[ ...]]
/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"。
一般表达式的快速参考:
. 通配符: 任何字符
* 重复: 以前字符或类出现零或零以上次数
^ 行位置: 行的开始
$ 行位置: 行的终点
[class] 字符类: 任何在字符集中的字符
[^class] 补字符类: 任何不在字符集中的字符
[x-y] 范围: 在指定范围内的任何字符
x Escape: 元字符 x 的文字用法
<xyz 字位置: 字的开始
xyz> 字位置: 字的结束
常用场景实例
D:\setup\apache-maven-3.8.6>netstat -an -o -i |findstr 8081
TCP 192.168.0.112:58225 116.162.46.142:8081 TIME_WAIT 6 87606
标签:findstr,匹配,文件,命令,搜索,字符,字符串
From: https://www.cnblogs.com/hcgk/p/16729905.html