Команда findstr ms-dos не будет искать подкаталоги - PullRequest
10 голосов
/ 01 февраля 2012

Мне пришлось отключить индексацию поиска Windows в Windows 7, так как старый жесткий диск постоянно шумел при включенной индексации!

Теперь я хочу использовать командную строку Windows для поиска определенного текстового термина во всех файлах, находящихся в текущем каталоге и подкаталогах

Как использовать команду Windiows findstr для поиска в подкаталогах?

В настоящее время, когда я открываю командную строку и меняю каталог на C:\Users\Damien\Documents\Research\2012July и запускаю команду findstr "thesis" *.tex /S, я получаю следующую ошибку:

FINDSTR: Cannot open /s

Эта команда будет искать в текущем каталоге, если я удалю / S, но я также хочу иметь возможность искать текст в подпапках.

Ответы [ 2 ]

21 голосов
/ 01 февраля 2012

Вам нужно поставить /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[ ...]]

Ваши модификаторы / переключатели, как бы они ни назывались,нужно прийти до вашего шаблона / строки

3 голосов
/ 01 февраля 2012

У вас есть аргументы в неправильном порядке, попробуйте это:

findstr /S "thesis" *.tex
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...