2012-02-01 59 views
7

我不得不關閉Windows 7中的Windows搜索索引,因爲舊硬盤不停地打開索引打開的噪音!findstr ms-dos命令將不會搜索子目錄

現在我想用Windows命令提示符搜索位於當前目錄和子目錄

如何使用Windiows命令FINDSTR搜索子目錄中的所有文件中的特定文本項?

目前,當我打開一個命令提示符並將目錄更改爲C:\Users\Damien\Documents\Research\2012July和運行命令findstr "thesis" *.tex /S,我得到以下錯誤:

FINDSTR: Cannot open /s 

這個命令將搜索當前目錄,如果我刪除/ S,但我希望能夠搜索子文件夾內的文本。

+0

作爲評論發佈,因爲我知道這不是你想要的答案,但:安裝Cygwin(www.cygwin.org),你將有一個完整的一致,功能,以及 - 始終正常工作的文檔化命令行工具。 UNIX'find'命令無限靈活且功能強大 - 當然可以在這裏完成你想要的任務。 – 2012-02-01 14:04:03

回答

3

你在錯誤的順序你的論點,試試這個:

findstr /S "thesis" *.tex 
16

你需要把/S之初,即:

findstr /S "thesis" *.tex 

從內置的幫助:

C:\>findstr /? 
Searches for strings in files. 

FINDSTR [/B] [/E] [/L] [/R] [/S] [/I] [/X] [/V] [/N] [/M] [/O] [/P] [/F:file] 
     [/C:string] [/G:file] [/D:dir list] [/A:color attributes] [/OFF[LINE]] 
     strings [[drive:][path]filename[ ...]] 

你的修飾符/開關,無論它們被稱爲,需要來之前你的模式/字符串

+0

感謝這一切都很棒! – DeadlyDan 2012-02-02 12:59:10

+0

@Jon如果我還想指示路徑(即findstr/S「some_string」* .txt PATH?),我將如何構造語法?在哪裏以及如何指示具有我想要的子文件夾的文件夾的路徑搜索。謝謝 – IberoMedia 2013-10-16 06:14:57

+0

首先將cd放入dir並使用/ S,或者查看/ D的文檔 – jon 2013-10-16 09:31:51