Команда FIND
Команда FIND
Ищет в файле или файлах заданную строку текста. После поиска FIND выводит на экран все строки текста, содержащие заданную строку. FIND [/V] [/C] [/N] [/I] "строка" [[диск:][маршрут]имя_файла[...]]
Параметр "строка" (указывается в кавычках) задает группу символов, которую вы хотите найти. Параметр [диск:][маршрут]имя_файла задает расположение и имя файла, в котором будет происходить поиск.
Параметр /V выводит все строки, не содержащие заданную строку. Параметр /C выводит только число строк, содержащих заданную строку. /N выводит перед каждой строкой номер строки. /I задает игнорирование регистра символов при поиске (например, "a" и "A" рассматриваются как один символ).
Если искомая строка содержит кавычки, для каждого вхождения кавычек внутри строки нужно указывать символ кавычки дважды.
Если опущено имя_файла, то FIND действует как фильтр, воспринимая ввод из стандартного источника MS-DOS (обычно клавиатура, или файл при использовании перенаправления либо конвейеризации).
В имени файла или в расширении, задаваемых в команде FIND, нельзя использовать трафаретные символы (* и ?). Для поиска строки в наборе файлов вы можете использовать FIND в команде FOR.
Если в одной команде заданы параметры /C и /V, то FIND выводит число строк, не содержащих заданную строку. При указании в одной команде /C и /N FIND игнорирует параметр /N.
Команда FIND не распознает возвратов каретки. При использовании FIND для поиска в файле текста, включающем возврат каретки, нужно ограничить строку текстом до возврата каретки.
В приведенной ниже таблице показаны возвращаемые данной командой коды:
0 | Поиск завершен успешно. Найдено по крайней мере одно совпадение. |
1 | Поиск завершен успешно, но совпадений не найдено. |
2 | Поиск завершен неуспешно. При поиске произошла ошибка, и FIND не может сообщить о найденных совпадениях. |
Приведем примеры. Чтобы вывести все строки файла MUSIC.DAT, содержащие строку "Pink Floyd", наберите команду: find "Pink Floyd" music.dat
Для поиска в наборе файлов, например во всех файлах .DAT, можно использовать следующий метод: for %f in (*.dat) do find "PC Magazine" %f FIND ищет в файлах .dat строку "PC Magazine".