天天看點

FINDSTR 指令使用詳解

Findstr 使用正規表達式搜尋檔案中的文本模式。 文法 findstr [/b] [/e] [/l] [/r] [/s] [/i] [/x] [/v] [/n] [/m] [/o] [/p] [/offline] [/g:File] [/f:File] [/c:String] [/d:DirList] [/a:ColorAttribute] [Stri

  

Findstr

使用正規表達式搜尋檔案中的文本模式。

文法

findstr [/b] [/e] [/l] [/r] [/s] [/i] [/x] [/v] [/n] [/m] [/o] [/p] [/offline] [/g:File] [/f:File] [/c:String] [/d:DirList] [/a:ColorAttribute] [Strings] [[Drive:][Path] FileName [...]]

參數

/b 

如果位于行的開頭則比對模式。

/e 

如果位于行的末尾則比對模式。

/l 

逐字地搜尋字元串。

/r 

使用搜尋串作為正規表達式。Findstr 将所有元字元解釋為正規表達式,除非使用了 /l。

/s 

在目前目錄和所有子目錄中搜尋比對的檔案。

/i 

指定搜尋不區分大小寫。

/x 

列印完全比對的行。

/v 

僅列印不包含比對的行。

/n 

在每個比對的行之前列印行号。

/m 

如果檔案包含比對項,則僅列印該檔案名。

/o 

在每個比對行之前列印查找偏移量。

/p 

跳過包含非可列印字元的檔案。

/offline 

利用脫機屬性設定處理檔案。

/f:File 

從指定檔案中讀取檔案清單。

/c:String 

使用指定的文本作為文字搜尋字元串。

/g:File 

從指定檔案得到搜尋字元串。

/d:DirList 

搜尋以逗号分隔的目錄清單。

/a:ColorAttribute 

使用兩個十六進制數指定顔色屬性。

Strings 

指定要在 FileName 中搜尋的文本。

[ Drive:][Path] FileName [...] 

指定要搜尋的檔案。

/? 

在指令提示符下顯示幫助。

注釋

? 使用 Strings 和 [Drive:][Path] FileName [...]

在指令字元串中,所有 findstr 指令行選項必須在 Strings 和 [Drive:][Path] FileName [...] 之前。

? 在 findstr 中使用正規表達式

Findstr 可以在任何 ASCII 檔案或檔案中精确查找所要查找的文本。然而,有時要比對的資訊隻有一部分或要查找更寬廣的資訊範圍。在這種情況下,findstr 具有使用正規表達式搜尋各種文本的強大功能。

正規表達式是用于指定文本類型的符号,與精确的字元串相反。标記使用文字字元和元字元。每個在正常的表達式文法中沒有特殊意義的字元都是文字字元,與出現的該字元比對。例如,字母和數字是文字元号。元字元是在正規表達式文法中具有特殊意義(操作符或分隔符)的符号。

下表列出 findstr 接受的元字元。

字元 值 

.

 通配符:任何字元

*

 重複:以前零次或多次出現的字元或類

^

 行中的位置:行首

$

 行中的位置:行尾

[class]

 字元類:集中的任何一個字元

[^class]

 反向類:非集中的任何一個字元

[X-y]

 範圍:指定範圍内的任何字元

X

 轉義:元字元 X 的文字用途

<xyz

 字的位置:字首

xyz> 

 字的位置:字尾

組合使用正規表達式文法的特殊字元功能十分強大。例如,下面的通配符 (.) 和重複符 (*) 的組合可以比對任何字元串:

.*

将如下表達式用作比對以“b”開頭并以“ing”結尾的任意字元串的更大表達式的組成部分:

b.*ing 

示例

使用空格分隔多個搜尋字元串,除非參數以 /c 為字首。要在檔案 x.y 中搜尋“hello”或“there”,請鍵入: