findstr 命令使用方法

2021-07-25 10:39:38 字數 3078 閱讀 7277

標籤: 正規表示式

windows

path

file

string

class

2008-02-28 09:10

14823人閱讀收藏

舉報

計算機日常維護(32)

目錄(?)

[+]

使用正規表示式搜尋檔案中的文字模式。

語法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/>

字的位置:字尾

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

將如下表示式用作匹配以「b」開頭並以「ing」結尾的任意字串的更大表示式的組成部分:

b.*ing

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

findstr "hello there" x.y

要在檔案 x.y 中搜尋「hello there」,請鍵入:

findstr /c:"hello there" x.y

若要查詢檔案 proposal.txt 中出現的所有單詞「windows」(首字母 w 大寫),請鍵入:

findstr windows proposal.txt

若要搜尋包含單詞 windows 的當前目錄和所有子目錄中的每個檔案(不考慮字母大小寫),請鍵入:

findstr /s /i windows *.*

要查詢包含字「for」的所有行(前面可有任意空格,如:電腦程式中的迴圈),幷包括每次出現的行號,請鍵入:

findstr /b /n /c:"*for" *.bas

如果要在相同組檔案中搜尋幾個不同專案,請在新行上建立包含每個搜尋標準的文字檔案。也可以列出要在文字檔案中搜尋的確切檔案。要使用檔案 finddata.txt 中的搜尋標準來搜尋 filelist.txt 中列出的檔案,然後將結果儲存到檔案 results.out 中,請鍵入:

findstr /g:finddata.txt /f:filelist.txt > results.out

假設您想要查詢當前目錄和所有子目錄中包含單詞「computer」的每個檔案,而不考慮字母的大小寫。若要列出包含單詞「computer」的所有檔案,請鍵入:

findstr /s /i /m "/" *.*

現在假定不僅需要查詢單詞「computer」,而且需要查詢以字母「comp」開頭的所有其他單詞,例如「compliment」和「compete」。請鍵入:

findstr /s /i /m "/格式

意義斜體

使用者必須提供的資訊

粗體 使用者必須像顯示的一樣準確鍵入的元素

省略號 (...)

可在命令列中重複多次的引數

在方括號 () 之間

可選專案

在大括號 ({}) 之間;將選項用管線 (|) 隔開。示例:

使用者必須從中只選擇乙個選項的選項組

courier font

**或程式輸出

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 命令使用詳解

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 命令使用詳解

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 使用正規表示式搜尋檔案中的文字模式。...