使用正則表達式搜索文件中的文本模式。正則表達式
語法spa
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 [...]].net
參數命令行
/bblog
若是位於行的開頭則匹配模式。字符串
/eget
若是位於行的末尾則匹配模式。table
/lclass
逐字地搜索字符串。List
/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 接受的元字符。
組合使用正則表達式語法的特殊字符功能十分強大。例如,下面的通配符 (.) 和重複符 (*) 的組合能夠匹配任何字符串: .* 將以下表達式用做匹配以「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/>" *.*
如今假定不只須要查找單詞「computer」,並且須要查找以字母「comp」開頭的全部其餘單詞,例如「compliment」和「compete」。請鍵入:
findstr /s /i /m "/<comp.*" *.*
格式 | 意義 |
斜體 |
用戶必須提供的信息 |
粗體 |
用戶必須像顯示的同樣準確鍵入的元素 |
省略號 (...) |
可在命令行中重複屢次的參數 |
在方括號 ([]) 之間 |
可選項目 |
在大括號 ({}) 之間;將選項用管線 (|) 隔開。示例:{even|odd} |
用戶必須從中只選擇一個選項的選項組 |
Courier font |
代碼或程序輸出 |
引用:https://blog.csdn.net/tianxudong2004/article/details/2126853