首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

dos命令findstr教程,查找搜索文本文件字符串,一般正则表达式

大家好,我是老盖,首先感谢观看本文,本篇文章做的有视频,视频讲述的比较详细,也可以看我发布的视频。

今天我们学习findstr这个命令,它这个命令是在文件中搜索查询字符串,也可以用于其它命令输出的数据进行查找,findstr /?可以看到这个命令的参数和介绍,它这个命令参数比较多,我们用的最多的是它这个命令的R参数,/R将搜索字符串作为一般表达式使用。

一般表达式类似于正则表达式,但是比正则表达式稍微简单一点。

一般表达式的快速参考:

.        通配符: 任何字符

*        重复: 以前字符或类出现零或零以上次数

^        行位置: 行的开始

$        行位置: 行的终点

[class]  字符类: 任何在字符集中的字符

[^class] 补字符类: 任何不在字符集中的字符

[x-y]    范围: 在指定范围内的任何字符

\x       Escape: 元字符 x 的文字用法

\

xyz\>    字位置: 字的结束

我准备了一个数据文件data.txt,里边写入了一些数字和英文,把它放在了dos的当前目录,一会用于命令测试。

[x-y]    范围: 在指定范围内的任何字符

我们首先使用查询1-9的数字,输入命令findstr  /R "[1-9]" data.txt,执行后可以看到搜索到的数字行全部被输出出来了。

我们再测试一下a到z英文字符的行,输入命令findstr  /R "[a-z]" data.txt,执行后可以看到英文行输出了出来。

这次我们只输出a到c测试一下,输入命令findstr  /R "[a-c]" data.txt,只输出了abc三行。

我们看一下其他参数,参数/V 只打印不包含匹配的行,输入命令findstr /V /R "[a-c]" data.txt,可以看到除了abc这三行,其他的数据行被输出出来了。

[^]任何不在字符集中的字符,我们用一般表达式中的这个符号,来代替参数V,输入命令findstr /R "[^a-c]" data.txt,它是除了abc这三行其他的行搜索,执行后可以看到其他行输出了。

我们再看一下参数N,/N 在匹配的每行前打印行数,输入命令findstr /N /R "[^a-c]" data.txt,可以看到其他的行加上了行数。

其他的一些参数,大家可以测试一下,findstr这个命令我们用的也比较多,经常用于bat批处理脚本中,判断一些命令根据命令的输出做出判断,是否命令执行成功等一些操作,大家可以多练习一下这个命令。

感谢观看本篇文章,希望对你有所帮助,本文由老盖聊技术原创,我是老盖,专注分享IT互联网与电脑知识,欢迎关注,本文是出于爱心帮助人的目的所写,请随意分享转载,帮助人越多爱的力量就越大,感谢正能量传播。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20200814A0AU7G00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券