在Windows中使用Findstr命令搜索文本文件内容

Windows provides findstr tool to search file contents. These file contents expected to be text and string but binary binary files are accepted too. But searching binary files and content will not give good results. In this tutorial we will look different usage types of the findstr command. Keep in mind that this is different than Windows find command which can be found following tutorial.

Windows提供了findstr工具来搜索文件内容。 这些文件的内容应该是文本和字符串,但也接受二进制二进制文件。 但是搜索二进制文件和内容不会得到很好的结果。 在本教程中,我们将查找findstr命令的不同用法类型。 请记住,这与可以在本教程之后找到的Windows find命令不同。

How To Find Specified Strings In Files With Find Command In Windows From Command Line With Examples

如何在Windows中使用命令行中的Find命令在文件中查找指定的字符串

帮帮我(Help)

Help about findstr command can be get with  /? option.

可以通过/?获得有关findstr命令的帮助/? 选项。

$ findstr /?
Help
Help
帮帮我

句法(Syntax)

Syntax of the findstr command is like below.

findstr命令的语法如下。

findstr [OPTIONS] [TERM] [FILENAME]

在文件中搜索字符串 (Search String In A File)

The most basic  usage of findstr searching a term in a file. This search will use default options where we will look them next steps. In this example we will only provide the string and file name. In this example we will search ismail in file users.txt

findstr在文件中搜索术语的最基本用法。 此搜索将使用默认选项,我们将在下一步中查找它们。 在此示例中,我们将仅提供字符串和文件名。 在此示例中,我们将在users.txt文件中搜索ismail

$ findstr "ismail" users.txt
Search String In A File
Search String In A File
在文件中搜索字符串

As we can see we provided the search term or string in double quotes to prevents errors and misuses.

如我们所见,我们以双引号提供了搜索词或字符串,以防止错误和误用。

忽略大小写 (Ignore Case)

While searching terms the default behaviour is case sensitive. Case sensitive means all provided string upper and lower cases are searched according to their cases and no case change will be made. We can change this behaviour according to our needs and search terms in case sensitive so given search term will match all cases accordingly.

搜索术语时,默认行为区分大小写。 区分大小写意味着将根据其大小写搜索所有提供的字符串大写和小写,并且不进行大小写更改。 我们可以根据需要更改此行为,并在区分大小写的情况下搜索词,以便给定的搜索词将相应地匹配所有情况。

In this example we will search for ISMAIL in a in case sensitive option.

在此示例中,我们将在大小写敏感的选项中搜索ISMAIL

$ findstr /I "ISMAIL" users.txt
Ignore Case
Ignore Case
忽略大小写

搜索多个字符串(Search Multiple Strings)

In previous example we have provided single term to search. In some situations we may need to search multiple terms. We can provide multiple strings to findstr command to search. All given strings will be like OR. In this example we will search terms ismail , john .

在前面的示例中,我们提供了单个术语进行搜索。 在某些情况下,我们可能需要搜索多个术语。 我们可以提供多个字符串给findstr命令进行搜索。 所有给定的字符串将类似于OR。 在此示例中,我们将搜索术语ismailjohn

$ findstr "ismail john" users.txt
Search Multiple Strings
Search Multiple Strings
搜索多个字符串

使用正则表达式(Use Regular Expression)

Regular expressions are used to specify the structure of the string not the whole characters of the string. We can express a string start and end characters. These regex expressions can be used with findstr command. In this example we will search a string which starts with j and ends with n . We will enable regular expression search /R .

正则表达式用于指定字符串的结构,而不是字符串的整个字符。 我们可以表示一个字符串的开始和结束字符。 这些正则表达式可以与findstr命令一起使用。 在此示例中,我们将搜索一个以j开头和以n结尾的字符串。 我们将启用正则表达式搜索/R

$ findstr /R "j.*n" users.txt
Use Regular Expression
Use Regular Expression
使用正则表达式

搜索多个文件(Search In Multiple Files)

Up to now we have searched terms in a single files. Searching single file is not efficient in most situations. Findstr provides the feature to search multiple files. In order to search multiple files we can use * . If we want to search only text files we can also provide extension like *.txt like below.

到目前为止,我们已经在单个文件中搜索了术语。 在大多数情况下,搜索单个文件效率不高。 Findstr提供了搜索多个文件的功能。 为了搜索多个文件,我们可以使用* 。 如果我们只想搜索文本文件,我们还可以提供扩展名,例如*.txt如下所示。

 $ findstr "a" *.txt
Search In Multiple Files
Search In Multiple Files
搜索多个文件

递归搜索多个文件(Search In Multiple Files Recursively)

In previous example we have searched all files in current working directory. But there is an options where we will search in all current working directories and sub directories too. We can this as recursive search. We will search for a recursively in this example.

在前面的示例中,我们搜索了当前工作目录中的所有文件。 但是有一个选项,我们也可以在所有当前工作目录和子目录中进行搜索。 我们可以将其作为递归搜索。 我们将寻找a在这个例子中递归。

$ findstr /s "a" *.txt
Search In Multiple Files Recursively
Search In Multiple Files Recursively
递归搜索多个文件

在行首搜索(Search At The Beginning Of Line)

We can search a term or string at the end of the lines. We will use /B options to search begging of the line. In this example we will search is at the beginning of the line.

我们可以在行尾搜索一个术语或字符串。 我们将使用/B选项来搜索行的乞求。 在这个例子中,我们将搜索is在该行的开头。

$ findstr /B "is" *.txt

在行尾搜索 (Search At The End Of Line)

Another way to search file is searching at the end of the file. We will use /E option to search at the end of the file.

搜索文件的另一种方法是在文件末尾进行搜索。 我们将使用/E选项在文件末尾进行搜索。

$ findstr /E "is" *.txt

打印行号 (Print Line Numbers)

Another useful feature of the findstr is printing line numbers with the results. This will give hint about the matched string line number. We can print line number of the matched string with /N option like below.

findstr的另一个有用功能是打印带有结果的行号。 这将提示有关匹配的字符串行号。 我们可以使用/N选项打印匹配字符串的行号,如下所示。

$  findstr /N "is" *.txt
Print Line Numbers
Print Line Numbers
打印行号
LEARN MORE  Java Data Types
了解更多Java数据类型

翻译自: https://www.poftut.com/search-text-files-content-findstr-command-windows/

Windows,你可以使用多种方法来搜索文件。以下是几种常用的方法: 1. 使用文件资源管理器:打开文件资源管理器(可以通过点击任务栏上的文件夹图标或按下Win + E快捷键),然后在搜索输入你要搜索的文件名或关键词。系统会自动显示匹配的文件。 2. 使用搜索助手:点击开始菜单,然后点击搜索按钮(或按下F3键),这将打开搜索助手。在搜索助手,你可以输入要搜索的文件名或关键词,并选择搜索的位置(例如整个计算机、特定文件夹等)。点击搜索按钮即可开始搜索。 3. 使用命令行工具:在命令提示符或PowerShell,你可以使用findstr命令搜索文件。例如,要在当前目录及其子目录搜索包含特定关键词的文件,你可以使用以下命令findstr /s /i "关键词" *。其,/s表示递归搜索子目录,/i表示忽略大小写。 4. 使用索引服务:Windows还提供了索引服务,可以加快文件搜索的速度。要使用索引服务,你可以打开搜索助手,点击“改变首选项”,然后选择启用制作索引服务。启用后,你可以在搜索助手输入要查找的字或词,并点击搜索按钮来快速查找文档。 总结起来,你可以通过文件资源管理器、搜索助手、命令行工具或索引服务来搜索文件。具体使用哪种方法取决于你的需求和偏好。 #### 引用[.reference_title] - *1* *3* [在Windows使用Findstr命令搜索文本文件内容](https://blog.csdn.net/cunjiu9486/article/details/109074634)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [如何在 Windows 快速查找文档](https://blog.csdn.net/dianmian4635/article/details/101588709)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值