Найти файл по тексту через проводник Windows 10
В Windows 10 есть поиск в проводнике, который помогает находить файлы по дате, расширению или про имени. Иногда, довольно сложно вспомнить когда был создан файл или его имя, но вы помните только часть текса в содержимом файле. И тут приходит на помощь еще один параметр для поиска — это содержимое. К сожалению, этот поиск работает только в текстовых файлах как .txt, .docs, .xlsx, .log, .pdf.
Как искать текст внутри документов в Windows 10
Откройте проводник, растяните окно по шире, нажмите сверху на вкладку «Дополнительные параметры» и установите значение для «Содержимое файлов«. Далее введите справа сверху в поиск, нужную фразу или слова, которое имеется в документе. В моем примере это «код для функции», и проводник мне выдал txt файл в котором я делал заметку.
Если Windows 10 не может найти файл по тексту, то можно включить параметр индексирования содержимого внутри файлов и перестроить индекс. Для этого:
- Откройте «Параметры» > «Поиск» > «Поиск в Windows» > «Расширенные настройки индексатора поиска«.
- В появившимся окне нажмите снизу на «Дополнительно«.
- Перейдите во вкладку «Типы файлов» и установите значение на «Индексировать свойства и содержимое файлов«.
- Нажмите OK и потребуется некоторое время, чтобы индекс перестроился.
Поиск текста в файлах через командную строку 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 гораздо больше. Особенно, если использовать её в комплексе с другими командами.
поиск 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. | |
[ :][ |
]
Комментарии 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 10
В операционной системе Windows 10 можно искать файлы не только по названию, но и по содержанию — по словам и фразам в текстовых документах, презентациях, книгах, сохраненных на диске веб-страницах и т.д. Чтобы находить файлы по содержимому с помощью встроенного поисковика Windows 10, необходимо проверить, запущена ли соответствующая служба, и включить на компьютере расширенную индексацию. Как это сделать, читайте в нашей пошаговой инструкции.
- С помощью горячих клавиш Windows + R открываем окно «Выполнить», набираем в поле ввода services.msc и нажимаем кнопку «ОК» или клавишу «Enter».
2. Откроется окно «Службы». Находим в списке службу, отвечающую за поиск — «Windows Search»
3. Если в графе «Состояние» указано, что служба выполняется, можно переходить к дальнейшим шагам. В противном случае следует дважды кликнуть по названию службы и в открывшемся окне, в раскрывающемся списке «Тип запуска», выбрать вариант «Автоматически» и нажать «ОК». После чего запускаем службу, нажав соответствующую ссылку в окне «Службы».
4. На следующем этапе настройки поиска файлов по содержимому в Windows 10 нам нужно разрешить индексацию файлов на жестком диске. Для этого запустим «Проводник» Windows и перейдем в раздел «Этот компьютер». Затем щелчком правой кнопки мыши по нужному диску откроем его контекстное меню и выберем команду «Свойства».
5. В появившемся окне устанавливаем флажок «Разрешить индексировать содержимое файлов на этом диске в дополнение к свойствам файла» и подтверждаем действие нажатием кнопки «ОК». Аналогичным образом включаем данную настройку для всех разделов жесткого диска.
6. Теперь нам нужно включить расширенную индексацию во встроенной службе Windows — «Параметры индексирования». Для поиска этой службы нажимаем на значок лупы в панели задач и начинаем вводить искомое название. Когда нужное приложение будет найдено, запускаем его щелчком левой кнопки мыши.
7. В открывшемся окне нажимаем кнопку «Изменить» и добавляем расположения, которые следует проиндексировать. Это могут быть разделы жесткого диска или отдельные папки на них, в которых вы собираетесь проводить поиск файлов по содержимому.
8. В окне «Индексируемые расположения» ставим галочки рядом с названиями нужных папок. Отмеченные папки будут показаны в списке «Включенные расположения» в нижней части окна. Нажимаем кнопку «ОК» для подтверждения сделанных настроек.
9. Снова оказываемся в окне «Параметры индексирования», где нажимаем кнопку «Дополнительно» и в открывшемся окне переходим на вкладку «Типы файлов». Здесь в секции «Как следует индексировать такие файлы?» устанавливаем переключатель в положение «Индексировать свойства и содержимое файлов» для всех нужных типов файлов (выделяем их поочередно). Если нужное расширение отсутствует в списке, вводим его в поле «Добавить новое расширение в список» и нажимаем кнопку «Добавить».
10. После нажатия кнопки «ОК» появится предупреждение, что перестройка индекса может занять значительное время. Жмем «ОК» и дожидаемся завершения индексирования.
11. После появления надписи «Индексирование завершено» в окне «Параметры индексирования» можно нажать кнопку «Закрыть» и протестировать поиск по содержимому.
12. Кликаем на значок лупы в панели задач и в поле ввода внизу печатаем текст, содержащийся в файле, который нам нужно найти. Нажимаем на значок с изображением страницы вверху, чтобы включить фильтр «Документы». Как видно на скриншоте, в результате поиска были найдены файлы электронных книг и html-документ, где содержится заданная фраза.
Потратив немного времени на то, чтобы настроить поиск в Windows 10, в будущем вы быстро сможете находить нужные вам файлы в указанных для индексации расположениях, даже если не помните их имен, по словам и фразам, встречающимся внутри текста этих документов.