Поиск файла через командную строку windows

поиск find

Выполняет поиск строки текста в файле или файлах и отображает строки текста, содержащие указанную строку. Searches for a string of text in a file or files, and displays lines of text that contain the specified string.

Синтаксис Syntax

Параметры Parameters

Параметр Parameter Описание Description
/v /v Отображает все строки, не содержащие указанный объект . Displays all lines that don’t contain the specified .
/C /c Подсчитывает количество строк, содержащих указанный объект , и отображает итоговое значение. Counts the lines that contain the specified and displays the total.
/n /n Предшествует каждой строке с номером строки файла. Precedes each line with the file’s line number.
/i /i Указывает, что при поиске регистр не учитывается. Specifies that the search is not case-sensitive.
[«/OFF» [строка]] [/off[line]] Не пропускает файлы с установленным атрибутом «вне сети». Doesn’t skip files that have the offline attribute set.
Обязательный элемент. Required. Задает группу символов (заключенных в кавычки), которые требуется найти. Specifies the group of characters (enclosed in quotation marks) that you want to search for.
[ :][

] Указывает расположение и имя файла, в котором выполняется поиск указанной строки. Specifies the location and name of the file in which to search for the specified string. /? /? Отображение справки в командной строке. Displays help at the command prompt.

Комментарии Remarks

Если вы не используете /i, эта команда ищет именно то, что указано для String. If you don’t use /i, this command searches for exactly what you specify for string. Например, эта команда обрабатывает символы и по a — A разному. For example, this command treats the characters a and A differently. Однако при использовании параметра /i Поиск выполняется без учета регистра, а в a A качестве того же символа обрабатывается и. If you use /i, however, the search becomes non-case-sensitive, and it treats a and A as the same character.

Если строка, которую нужно найти, содержит кавычки, необходимо использовать двойные кавычки для каждой кавычки, содержащейся в строке (например, «» Эта строка содержит кавычки «»). If the string you want to search for contains quotation marks, you must use double quotation marks for each quotation mark contained within the string (for example, «»This string contains quotation marks»»).

Если опустить имя файла, эта команда выступает в качестве фильтра, принимая входные данные из стандартного источника входных данных (обычно это клавиатура, канал (|) или перенаправленный файл), а затем отображает все строки, содержащие строку. If you omit a file name, this command acts as a filter, taking input from the standard input source (usually the keyboard, a pipe (|), or a redirected file) and then displays any lines that contain string.

Параметры и параметры командной строки для команды Find можно вводить в любом порядке. You can type parameters and command-line options for the find command in any order.

Нельзя использовать подстановочные знаки (* и ?) в именах файлов или расширениях, указанных при использовании этой команды. You can’t use wildcards (* and ?) in file names or extensions that you specify while using this command. Для поиска строки в наборе файлов, указанных с помощью подстановочных знаков, эту команду можно использовать в команде for . To search for a string in a set of files that you specify with wildcards, you can use this command within a for command.

При использовании /c и /v в одной командной строке эта команда отображает количество строк, которые не содержат указанную строку. If you use /c and /v in the same command line, this command displays a count of the lines that don’t contain the specified string. При указании параметра /c и /n в той же командной строке команда Find игнорирует параметр /n. If you specify /c and /n in the same command line, find ignores /n.

Эта команда не распознает возвраты каретки. This command doesn’t recognize carriage returns. При использовании этой команды для поиска текста в файле, который содержит символы возврата каретки, необходимо ограничить строку поиска текстом, который может быть найден между возвратами каретки (то есть строкой, которая не может быть прервана символом возврата каретки). When you use this command to search for text in a file that includes carriage returns, you must limit the search string to text that can be found between carriage returns (that is, a string that is not likely to be interrupted by a carriage return). Например, эта команда не сообщает о совпадении для строкового налогового файла, если между словами налога и файла происходит возврат каретки. For example, this command doesn’t report a match for the string tax file if a carriage return occurs between the words tax and file.

Примеры Examples

Чтобы отобразить все строки из Pencil.AD , которые содержат строку резкость карандаша, введите: To display all lines from pencil.ad that contain the string pencil sharpener, type:

Чтобы найти текст, «специалисты, обозначенные в документе только для обсуждения. To find the text, «The scientists labeled their paper for discussion only. Это не окончательный отчет «. It is not a final report.» в файле report.doc введите: in the report.doc file, type:

Для поиска набора файлов можно использовать команду Find в команде for . To search for a set of files, you can use the find command within the for command. Чтобы найти в текущем каталоге файлы с расширением bat, которые содержат строку строки, введите следующую команду: To search the current directory for files that have the extension .bat and that contain the string PROMPT, type:

Чтобы найти и отобразить имена файлов на диске C, которые содержат строковый ЦП, выполните поиск на жестком диске с помощью вертикальной черты (|), чтобы направить выходные данные команды dir в команду Find следующим образом: To search your hard disk to find and display the file names on drive C that contain the string CPU, use the pipe (|) to direct the output of the dir command to the find command as follows:

Так как поиск при поиске выполняется с учетом регистра, а dir создает прописные буквы, необходимо либо ввести строковый процессор в верхнем регистре, либо использовать параметр командной строки /i с командой Find. Because find searches are case-sensitive and dir produces uppercase output, you must either type the string CPU in uppercase letters or use the /i command-line option with find.

Как найти файл в Windows с помощью cmd ?

Как быстро найти файл в Windows с помощью cmd ?

Приветствую вас, сейчас мы научимся, как найти файл или папку в Windows без помощи неважно работающего проводника системы, и будем использовать для этого либо команды в MS-DOS, либо с помощью его эмулятора – консоли команд cmd.

У такого способа есть лишь один недостаток, который связан лишь с беспричинной боязнью пользователей перед текстовым интерфейсом работы с системой и сложившейся привычкой к графическому. Однако, по сути в обоих случаях нам всё равно приходится вручную набирать условия поиска потерявшегося файла или пакета файлов, а здесь без «вседозволенности» консоли просто не обойтись. От команд давно почившей операционной системы MS-DOS не скроется ничего, и cmd способна без труда открыть путь ко всем документам и директориям, которые находятся в чреве Windows .

Что нужно, чтобы найти файл в Windows ?

Нам нужно имя файла и программу, которая его создала либо умеет читать.

Итак, если уверены, что файл просто «потерялся», вам нужно через консоль оказаться в корневой папке системы. Для этого введём пару символов:

Если вы точно знаете имя файла или документа, это не проблема даже для поисковика Windows. Но есть ведь задача и посложнее…

А теперь, представьте, что вам нужно найти файл или документ, имя которого вы и толком-то не помните. Допустим, в названии что-то было про «установку». То-ли «установкА», то-ли «установкИ», то-ли «установОК»… Не проблема – так Windows и спросите:

  • dir – команда отобразить список файлов и директорий
  • * – что-то там… (ну забыл я, мол)
  • . – расширение файла
  • /s – команда на поиск в текущей директории и подкаталогах.

Результаты через пару мгновений будут выглядеть примерно так:

На этот же манер можно найти файл , если вы знаете, какое расширение он имеет, т.е. какой программой открывается. Командой

можно будет найти документы Exel и Word. Присмотритесь к примерам разновидностей команд (вариаций здесь множество):

отобразит в одной выдаче документы с расширениями .doc и .txt

команда с этим атрибутом (в отличие от /s) поможет. если результатов будет множество, а вам удобнее просматривать их с небольшим интервалом.

выдаст список файлов и директорий в алфавитном порядке

отображает все папки и их содержимое, включая время создания, количество файлов в каждой, сколько места занимают.

Поиск текста в файлах через командную строку Windows

Недавно мы рассматривали поиск файлов через командную строку Windows. Сегодня поговорим о том, как найти внутри файлов нужный нам текст. Сделать это можно при помощи команды FIND.

Команда find сообщает имена файлов, в которых был найден искомый файл, и выводит строки, в которых он содержится.

Синтаксис команды find :

FIND [/V] [/C] [/N] [/I] [/OFF[LINE]] «искомый_текст» [путь_к_файлу]

V — вывод всех строк, НЕ содержащих искомый текст;

C — вывод только общего числа строк, содержащих искомый текст;

N — вывод номеров строк;

I — поиск без учёта регистра символов;

OFF[LINE] — не пропускать файлы с атрибутом «автономный».

Для примера проверим все текстовые файлы в каталоге C:\test\ на наличие слова «текст».

Если посмотреть на скриншот ниже, то можно подумать, что ни один из файлов не содержит слова «текст». Конечно, это вполне допустимый вариант. Но есть и другое объяснение.

Дело в том, что по умолчанию текст в командной строке Windows отображается согласно кодовой странице CP866, а в файлах он в кодовой странице CP1251. Поэтому нам достаточно сменить кодовую страницу в текущем окне командной строки. О том, как это сделать, можно прочитать в статье по этой ссылке.

Теперь мы видим, что слово «текст» встречается во всех трёх файлах.

Теперь посмотрим на строки, в которых нет слова «текст»:

Такие оказались только в файле FILE_1.TXT.

Помните, что команда find по умолчанию учитывает регистр. Поэтому, написав в ней «Текст», мы не найдём подобного слова в файлах. Но регистр можно и проигнорировать:

На скриншоте ниже хорошо видно, что сперва команда не нашла слова «Текст» в файлах, так как в них оно записано без заглавных букв. Добавив /i , мы это исправили.

Допустим, нам нужно знать порядковые номера строк, в которых отсутствует слово «текст»:

Если мы захотим знать число строк, в которых присутствует искомое слово, тогда выполним команду:

А если нам нужно знать число строк, где это слово отсутствует, тогда пример команды такой:

Хотя до этого в примерах мы искали отдельное слово, find спокойно ищет и выражения:

Особенностью команды find является то, что искомый текст обязательно нужно заключать в кавычки. Это приводит к трудностям, если в пути к файлам (и в именах файлов) содержится пробел. В таком случае нужно воспользоваться перенаправлением ввода, но только если мы ищем в конкретном файле.

Как видите, наличие пробела в имени каталога C:\test test\ не помешало осуществить поиск. Но это что касается поиска в файле file_1.txt. А вот попытка поискать сразу во всех файлах привела к ошибке.

В таком случае можно воспользоваться циклическое обработкой, к примеру, командой for :

Помните, что в этом случае в командной строке нужно использовать конструкции вида %a, а в файлах .bat и .cmd вида %%a.

До этого в примерах мы всегда указывали в каких файлах искать. Если этого не сделать, то команда find выполняет поиск в тексте консоли или в тексте, который был передан по конвейеру другой командой.

Для следующего примера вернём кодовую страницу CP866. После этого отсортируем вывод команды ipconfig /all — оставим только те строки, где содержится слово «Состояние»:

Здесь мы лишь пробежались по вершинам, но возможности команды find гораздо больше. Особенно, если использовать её в комплексе с другими командами.

Читайте также:  Linux mount android device
Оцените статью