Windows CMD中的findstr命令詳解

2021-08-30 15:54:26 字數 1690 閱讀 6996

一、作用

findstr是window系統自帶的命令,用於查詢某路徑下指定的乙個或多個檔案中包含某些特定字串的行,並將該行完整的資訊列印出來,或者列印查詢字串所在的檔名。其用途和用法類似linux下的grep命令。findstr命令在ms-dos下使用。

二、命令語法

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          如果位於行的開頭則匹配模式,b是begin的首字母。

/e         如果位於行的末尾則匹配模式,e是end的首字母。

/l         使用文字搜尋字串,l是language的首字母。

/r         使用搜尋串作為常規表示式。findstr 將所有元字元解釋為常規表示式,除非使用了 /l。r是regular的首字母。

/s         在當前目錄和所有子目錄中搜尋匹配的檔案。

/i         指定搜尋不區分大小寫。

/x         列印完全匹配的行。

/v         只列印不包含匹配的行。

/n         在每個匹配的行之前列印行號。

/m         如果檔案包含匹配項,僅列印該檔名。

/o         在每次匹配行之前列印查詢偏移量。

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

/offline         利用離線屬性設定處理檔案。

/f:file         從指定檔案中讀取檔案列表。

/c:string         使用指定的文字作為文字搜尋字串。

/g:file         從指定檔案得到搜尋字串。

/d:dirlist         搜尋以逗號分隔的目錄列表。

/a:colorattribute         使用兩個十六進製制數指定顏色屬性。

strings         指定要在 filename中搜尋的文字。

[drive:][path] filename [...]         [drive:]、[path]是可選的,如果省略,預設是查詢當前目錄,至少指定乙個檔案,可以同時指定多個,用空格分隔,另外檔名可以使用萬用字元,例如所有文字檔案,就可以寫成 *.txt 即可。

/?         在命令提示符顯示幫助。

四、例子

1、在當前目錄及所有子目錄下的所有檔案中查詢

在當前目錄及所有子目錄下的所有檔案中查詢"backup"這個字串,*.*表示所有型別的檔案。

findstr /s /i "backup" *.* 

2、查詢帶有空格的字串

在當前目錄及所有子目錄下查詢"backup jobs"

findstr /s /i /c:"backup jobs" *.* 

3、指定路徑查詢字串"cmd"

在c:\tmp\查詢所有txt檔案的字串"cmd"

findstr /s /i /c:"cmd" c:\tmp\*.txt

對vector中的pair進行多次find操作

在c 的stl中,對包含pair結構的vector,進行多次搜尋操作。中主要包括兩個關鍵點 因為vector中包含了pair結構,所以在搜尋中要用find if代替常規的find函式 需要對vector經行多次查詢操作,且需要查詢的值會發生改變,所以要利用仿函式 functor 進行傳值。inclu...

windows cmd中的 cd命令,你會用嗎?

命令 作用cd顯示當前目錄 cd 進入父目錄 cd d d 進入上次d盤所在的目錄 或在直接輸入 d cd d d 進入d盤根目錄 cd d 顯示上次d盤所在的目錄 cd d d src進入d src目錄 cd prj src view進入當前目錄下的prj src view資料夾 補充 dir顯示...

windows cmd 下的for命令幫助

對一組檔案中的每乙個檔案執行某個特定命令。for variable in set do command command parameters variable 指定乙個單一字母可替換的引數。set 指定乙個或一組檔案。可以使用萬用字元。command 指定對每個檔案執行的命令。command par...