Как производится поиск файлов с помощью шаблонов

Обновлено: 03.07.2024

Задача получения списка файлов или папок в другой папке часто бывает при написании программы, поэтому, чтобы рецепт всегда был под рукой, решил написать коротенькую статью.

Получить список файлов в папке

Для получения списка файлов можно воспользоваться методом GetFiles.

Пример поиска файлов:

Метод GetFiles может принимать 3 параметра, из которых первый обязательный:

GetFiles(String path, String pattern, SearchOption options)

path - путь к папке, в которой ищем файлы;

pattern - шаблон поиска файлов (например, *.txt или ??abc.doc);

options - способ поиска, указывающий нужно искать только в текущей папке (SearchOption.TopDirectoryOnly) или во вложенных тоже (SearchOption.AllDirectories).

Пример поиска файлов по шаблону смотрите ниже (рекурсивный поиск).

Метод EnumerateFiles так же может принимать 3 параметра:

path - путь к папке, в которой ищем файлы;

pattern - шаблон поиска файлов;

options - способ поиска.

Пример поиска файлов методом EnumerateFiles:

Как видим, поиск методом EnumerateFiles аналогичен GetFiles, однако, он начнется сразу, до получения всего списка файлов, что может быть актуальным при очень большом количестве файлов.

Получить список папок в папке

Для получения списка папок можно воспользоваться методом GetDirectories.

Пример поиска папок с помощью GetDirectories:

Метод GetDirectories может принимать 3 параметра, из которых первый обязательный:

GetDirectories(String path, String pattern, SearchOption options)

path - путь к папке, в которой ищем файлы;

pattern - шаблон поиска файлов (например, *.txt или ??abc.doc);

options - способ поиска, указывающий нужно искать только в текущей папке (SearchOption.TopDirectoryOnly) или во вложенных тоже (SearchOption.AllDirectories).

Метод EnumerateDirectories аналогично GetDirectories принимает 3 параметра:

path - путь к папке, в которой ищем файлы;

pattern - шаблон поиска файлов;

options - способ поиска.

Пример поиска папок с помощью EnumerateDirectories:

Примечание: Во всех способах получения файлов и папок можно во втором параметре указывать шаблон поиска pattern, однако в нем можно использовать только * (любое количество любых символов) и ? (один любой символ) для указания шаблона поиска, регулярные выражения не поддерживаются.

Получить список файлов по шаблону рекурсивно

В этом случае нужно лишь добавить 2-й параметр, в котором указываем маску файлов и 3-й параметр, означающий что нужно искать файлы так же во вложенных папках.

Однако, у этого способа есть недостаток - в случае, если в какую-то папку нет доступа, получится ошибка и список файлов не будет получен совсем.

Рекурсивно получить список всех файлов и папок

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

Плюсом такого рекурсивного поиска так же является то, что можно еще и контролировать уровень вложенности и делать, например, отступы для разных уровней.

Пиоск файламожно провести , нажав клавишиAlt + F7 , а затем набрать его имя в окне . Вместо имени файла можно набратьшаблон , тогда будут найдены все соответствующие ему файлы .Шаблон – такое имя файла , в котором вместо некоторых букв записаны символы «?» или «*» .

Как создать текстовый файл в среде оболочки Norton Commander ?

Создать текстовый файл можно , нажав клавиши Shift + F4 , набрав имя файла , а затем и текст для него .

Можно ли восстановить удалённый файл ?

Восстановить случайно удалённый файл . Для таких операций на каждом компьютере имеется большой набор сервисных программ (утилит) .

Восстановить случайно удалённый файл .

Получив команду на удаление файла , MS DOSвыполняет следующие операции :

заменяет первую букву в имени файла на некоторый условный символ;

помечает все кластеры , занятые файлом , как свободные .

Для каких целей предпринимается архивирование файлов ?Ка-кие программы – архиваторы вы знаете ?

Уменьшает место занимаемое ими на диске .

ARJ , PKZIP/PKUNZIP (.ZIP) , RAR (.RAR) , LHA (.LZH) .

В чём заключается концепция интегральной информационной безопасности ?

обеспечение целостности данных (защита от сбоев , неавторизованного создания или уничтожения данных) ;

обеспечение конфиденциальности информации ;

обеспечение доступности для всех авторизованных пользователей .

Ответьте на вопросы , оформленные в виде тестов , которые находятся на прилагаемой дискете или в методических указа-ниях по дисциплине .

Какие файлы могут запускаться на выполнение ?

Ответ : а) Да .

Могут ли в имени файла присутствовать символы «?» , «*» ?

Ответ : а) Да .

В процессе работы команду DOS , можно временно приостановить одновременным нажатием

Ответ : а) Ctrl + S .

Какие команды DOS являются внешними

Ответ : а) Команды , исполняющие программами DOS , постоянно размещёнными в оперативной памяти .

Изменение текущего каталога в DOS производится командой

Ответ : с) mem .

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

Ответ : b) cd с аргументом , в котором указывается новый путь .

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

Ответ :b) ren .

Какими клавишами в NC осуществляется поиск файла ?

Ответ : b) Alt + F7 .

Какими клавишами в NC убираются обе панели ?

Ответ : a) Ctrl + O .

Вызов меню с заранее заданными действиями осуществляется клавишами

Ответ : b) F2 .

Создать текстовый файл можно , нажав клавиши

Ответ : a) Shift + F4 .

Как запустить программу , которая находится на рабочем столе ?

Ответ : d) Kликнув левой клавишей мыши на иконке программы.

Что такое WordPad ?

Ответ : b) Текстовый редактор .

Как закрыть окно ?

Ответ : а) Кликнуть на крестик в правом верхнем углу окна .

Как правильно выключить компьютер , находясь в Windows 95 ?

Как создать папку на рабочем столе ?

Ответ : а) Кликнуть на рабочем столе правой клавишей мыши , затем выбрать

,,Папка “ в подменю ,, Создать “ .

Как создать из приложения в приложение ?

Ответ : a) С помощью проводника .

Можно ли запустить приложение DOS из-под Windows 95 ?

Ответ : b) Нет .

Можно ли запустить приложение Windows 95 из под DOS ?

Ответ : а) Да .

Для чего используется сочетание клавиши Ctrl+Esc ?

Ответ : с) Для вызова главного меню Windows 95 .

Что будет , если нажать сочетание клавиш Ctrl+Alt+Del в среде Windows 95 ?

Ответ : b) Появится окно «Завершение работы программы» .

Как перенести объект в папку ?

Ответ : с) Нажать на объект левой клавишей мыши и , не отпуская её , перетащить объект в папку .

Как изменить свойства объекта ?

Ответ : b) Кликнуть на объект левой клавишей мыши на заголовок окна , и ,не отпуская её , перетащить окно .

Для чего служит приложение “ Проводник ” ?

Ответ : b) Для работы с файлами и другими объектами .

Как переместить окно ?

Ответ : а) Нажать левой клавишей мыши на заголовок окна , и , не отпуская её , перетащить окно .

Как очистить корзину ?

Ответ : b)Кликнуть на неё правой клавишей мыши , затем выбрать пункт “ Очи- стить корзину ”.

Для чего служит корзина ?

Ответ : а) Для временногохранения удалённых файлов .

Можно ли создать папку в другой папке ?

Ответ : а) Да .

Как создать папку в другой папке ?

Ответ : с) Открыть папку , дважды кликнуть на рабочую область окна правой клавишей мыши , выбрать пункт “Папка” в меню “Создать” .

Как заставить приложение Windows запускаться автоматически при запуске Windows 95 ?

Ответ : b) Поместить ярлык приложения в папку «Автозагрузка» .

Как изменить имя объекта ?

Ответ : с) Сделать объект активным и написать новое имя .

Как создать ярлык объекта ?

Ответ : а) Кликнуть на объект правой клавишей мыши , затем выбрать пункт “Создать ярлык” .

Сотрётся ли объекта , если стереть его ярлык ?

Ответ : b) Нет .

Как изменить размер панели задач ?

Ответ : а) Нажать левой клавишей мыши на верхней бортик панели задач и тащить его вверх .

Как можно изменить расположение панели задач ?

Ответ : b) Нажать на панель задач левой клавишей мыши и , не отпуская её навестись мышью на новое место панели задач .

Где может быть расположена панель задач ?

Ответ : а) Вверху и внизу экрана (горизонтально) , слева и справа по краям экрана (вертикально)

Как открыть файл в текстовом редакторе WordPad ?

Ответ : а) Нажать на иконку «Открыть документ» .

Как получить справку по Windows 95 ?

Ответ : с) Кликнуть на иконку «Справка» на рабочем столе .

Как отличить активное окно от неактивного по внешнему виду окна ?

Ответ : b) Цветом заголовка окна .

Как открыть системное меню окна ?

Ответ : b) Кликнуть по заголовку окна правой клавишей мыши .

Как закрыть окно с помощью клавиатуры ?

Ответ : a) Комбинаций клавиш Alt + F4 .

Будет приложение продолжать работу , если его минимизировать ?

Ответ : b) Нет .

Если удалить папку удалится ли её содержимое ?

Ответ : b) Нет .

Какова максимальная длинна имени файла в Windows 95 ?

Ответ : b) 255 символов .

Как вызвать главное меню Windows 95 ?

Ответ : b) Кликнуть правой клавишей мыши на панель задач .

Могут ли несколько окон открыты одновременно ?

Ответ : а) Да

Могут ли несколько окон быть активными одновременно ?

Ответ : b) Нет , только одно окно может быть активным .

Как вызывается контекстно-зависимое меню ?

Ответ : а) Нажатием на правую клавишу мыши при курсоре , установленном на нужном объекте .

Как автоматически упорядочить значки на рабочем столе ?

Ответ : а) Вызвать контекстное меню рабочего стола и выбрать пункт «Упорядочить значки»

Что произойдёт , если кликнуть по кнопке минимизации правой клавишей мы-ши ?

Ответ : b) Окно минимизируется .

Для чего служит кнопка “Reset” на системном блоке ?

Ответ : с) Для выключения компьютера .

В каких случаях можно нажимать кнопку «Reset» в Windows 95 ?

Ответ : b) Можно использовать для перезагрузки компьютера .

Как изменить текущее время ?

Ответ : b) Дважды кликнуть на часы , находящиеся на панели задач .

Как скопировать содержание активного окна в буфер обмена ?

Ответ : с) Перенести окно в буфер обмена .

Что такое буфер обмена ?

Ответ : а) Буфер ,обеспечивающий обмен данными между приложениями .

Как изменить размер окна ?

Ответ : с) Подвести курсор мыши к бордюру окна , и , удерживая левую клавишу мыши , тащить бортик в нужную сторону

Как скопировать содержание экрана в буфер обмена ?

Ответ : с) Вызвать контекстно-зависимое меню окна и выбрать пункт «Скопировать в буфер обмена» .

Как найти файл или папку , созданную ранее определённого числа ?

Ответ : а) Выбрать пункт «Программы» и «Стандартные» в главном меню Windows 95 , кликнуть н приложение «Поиск» .

Курсор мыши превратился в песочные часы . Что бы это значило ?

Ответ : а) Система занята . Подождите

Какой тип у файла с расширением .ехе ?

Ответ : а) Готовый к выполнению файл .

Какой тип у файла с расширением .bat ?

Ответ : с) Звукозапись .

Какой тип у файла с расширением .xls ?

Ответ : а) Упакованный файл .

Какой тип у файла с расширением .dos ?

Ответ : а) Текстовый фай произвольного типа .

Какой тип у файла с расширением .sys ?

Ответ : а) Файл приложения .

Как отключить изображение часов на панели задач ?

Ответ : с) Выбрать в главном меню пункт «Настройка» , «Панель задач» , убрать галочку напротив пункта «Отображать часы» .

Как сделать так , чтобы панель задач перекрывалась другими окнами ?

Ответ : b) Выбрать в главном меню пункт «Настройка» , «Панель задач» , убрать галочку напротив пункта «Расположить поверх всех окон» .

Как очистить меню «Документы» ?

Ответ : а) Выбрать в главном меню пункт «Настройка» , «Панель задач» , кликнуть на «Настройка меню» , кликнуть на кнопку «Очистить» .

Что хранится в меню «Документы» главного меню Windows 95 ?

Ответ : а) Документы пользователя

Что входит в понятие «Документ» ?

Ответ : а) Любые файлы , создаваемые пользователем с помощью приложений .

Какой кнопкой можно активизировать сделанные установки , не закрывая окна ?

Ответ : а) «Применить» .

Как сменить фоновый рисунок ?

Ответ : b) Дважды кликнуть по иконке «Экран» в панели управления , выбрать рисунок в окошке «Рисунок» и нажать кнопку «ОК» .

Как сменить заставку (Screen Saver) ?

Ответ : а) Дважды кликнуть по иконке «Экран» в панели управления , кликнуть по пункту заставка , выбрать заставку в появившемся окошке .

Для чего служит модем ?

Ответ : b) Для переачи данных по каналам связи , в том числе и телефонным лини-ям .

Куда подключается звуковая плата ?

Ответ : а) В слот на материнской плате .

Где находятся для подключения микрофона и колон к звуковой плате ?

Ответ : b) На задней панели компьютера .

Что показывает цифровой индикатор на передней панели компьютера ?

Ответ : а) Скорость винчестера в оборотах в секунду .

Как удалить пункт из главного меню Windows 95 ?

Ответ : а) Выбрать пункт «Панель задач»в меню «Настройка» главного меню Windows 95 кликнуть на «Настройка меню» , нажать кнопку «Удалить» .

Чем активные колонки отличаются от пасивных ?

Ответ : а) Пассивные колонки усиливают сигнал , поступающий от звуковой платы .

Как по внешнему виду отличить активные колонки от пасивных ?

Ответ : с) Активные колонки имеют регулятор громкости и кнопку включения .

Для чего служит клавиша Caps Lock ?

Ответ : а) Для переключения режима печати в верхнем и нижнем регистре клавиатуры .

Как распечатать документ в текстовом редакторе WordPad ?

Ответ : а) Выбрать пункт “ Печать ”в меню “ Документ ” , установить необходимые параметры печати и кликнуть на “ ОК”.

Как сохранить документ в текстовом редакторе WordPad ?

Ответ : а) Кликнуть на иконку “ Сохранить документ ” в панели инструментов .

Поддерживает ли текстовый редактор WordPad формат документа MS-WORD ?

Ответ : а) Да .

Как вставить текущую дату в документ , редактируемый текстовым редактором WordPad ?

Ответ : с) Выбрать пункт “ Дата и время ” в меню “ Вставка ” и выбрать нужный формат даты .

Как отменить последнюю операцию в текстовом редакторе WordPad ?

Ответ : а) Вызвать контекстно-зависимое меню и выбрать пункт «Отмена» .

Как изменить вид калькулятора со стандартного на инженерный ?

Ответ : b) Выбрать пункт “ Инженерный ”в меню “ Вид ”.

Как включить режим переноса по словам в текстовом редакторе “Блокнот ”?

Ответ : а) Кликнуть на пункт “ Перенос по словам ” в меню “ Правка ”.

Что такое кэш-память ?

Ответ : а) Дополнительная оперативная память , предназначенная для архивных данных .

CMOS RAM , это

Ответ : а) Обновляемый участок в постоянной памяти ПК .

Чтобы занести изменение в BIOS , необходимо

Ответ : а) Нажать на Del во время загрузки компьютера и зайти в программу BIOS Setup.

Дополнительная оперативная память в виде модулей SIMM или DIMM размещается

Ответ : а) На специальной плате расширения .

Стример , это

Ответ : с) Устройство для копирования информации на магнитную ленту .

Адаптеры ( или контролёры ), это

Ответ : а) Устройства , служащие для поддержки взаимодействия внешних устройств с ПК .

Подходит ли процессорное гнездо Socket7 для процессоров Pentium II ?

Ответ : а) Да .

Какое стандартное отношение длины экрана монитора к его высоте ?

Ответ : а) 4/3 .

Для чего на материнской плате установлена батарейка ?

Ответ : а) Для подсвечивания индикаторов передней панели компьютера .

Сколько видеопамяти потребуется для того , чтобы работать в режиме 1024*768/HighColor ?

Ответ : b) Примерно 1 Мб .

ТСО’99 – это стандарт

Ответ : а) системной шины .

Что означает маркировка CD-RW на компакт-диске ?

Ответ : с) Диск допускает только считывание .

Тут вы можете оставить комментарий к выбранному абзацу или сообщить об ошибке.

windows-search

В этой статье вы узнаете весьма интересные вещи о встроенном файловом поиске Windows и прочитав материал сможете находить даже затерянные в папках файлы о которых знаете крупицы информации.

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

Опции и и параметры расширяющие возможности поиска

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

* - Означает любую последовательность любых символов, т.е. все символы.

? - Любой один символ

<"something" - Поиск имени (Название файла, автор и тд., смотря где поставить) которое должно начинаться с того что в кавычках. В примере ищется имя, где начало something.

>"something" - Поиск имени, которое должно оканчиваться на то что в кавычках.

- Поиск точного совпадения с тем, что находится в кавычках.

- Поиск имени, которые содержат точный набор символов как тот, который в кавычках. Т.е. по запросу имяфайла:

="курс" будут находиться файлы не только со словом Курс, но и просто содержащие эту последовательность символов (Курсовой, Курсач).

!"Курс" - Поиск файлов, которые не содержат того что в кавычках. Т.е. этот параметр полностью противоположен предыдущему.

<> - Означает как "ни есть", "не". Т.е. запрос где будет вид: <> картинка , будет искать всё кроме картинок.

() - Скобки служат для того чтобы отделять и уточнять комбинирующую группу, где действуют операторы.

"" - Кавычки служат для точного нахождения порядка символов внутри кавычек. Из-за этого внутри кавычек операторы не работают вовсе, как и фильтры.

ИЛИ - Оператор ИЛИ. Например, запрос имяфайла: курсовая ИЛИ работа будет искать файлы где встречаются слова либо курсовая либо работа ну или и то и то. В английской версии OR.

И - Оператор И. Например, запрос имяфайла: к урсовая И работа будет искать файлы где есть оба слова, причём нет разницы в каких местах они расположены и необязательно рядом друг с другом. В английской версии AND.

НЕ - Оператор НЕ. Например, запрос имяфайла: курсовая НЕ работа будет искать файлы где есть слово курсовая, но нет слова работа. В английской версии NOT.

Приведём немного приверов использования операторов:

размер:10МБ И автор: (Иван) НЕ датаизменения:>2009 - Найдёт файлы Ивана по 10 Мегабайт, которые изменены после 2009 года.

имяфайла: (*156*) И тип:(PNG ИЛИ JPEG) - Найдёт файлы, где в имени содержится 156 и его расширение будет PNG либо JPEG.

автор:( Ал* ИЛИ Иван) - Найдёт файлы авторов Алексея, Александра, Алёны и Ивана.

Теперь фильтрирующие опции.

Ниже мы приведём какие фильтрирующие опции вы можете использовать при поиске файлов и папок.

имяфайла: - Имя искомого файла. Аналог на англоязычной Windows - filename.

тип: Указывает какой тип файла ищется в данный момент. Может принимать как значения расширений файлов (Например, тип: PNG ), так и их логическое определение (Например: тип: музыка или тип: картинка ). Аналог на англоязычной Windows - type.

вид: - Тоже самое что и тип:. Аналог на англоязычной Windows - kind:

датаизменения: - Указывает на то, когда файлы был изменён. Может принимать точные значения, диапазоны, а также словестные значения (давно, вчера и тд.). Аналог на англоязычной Windows - datemodified.

датаизменения: 21.‎01.‎2001 .. ‎05.‎01.‎2014 (Обязательно две точки в диапазоне)

датасоздания: - Указывает на то, когда файл был создан. Значения принимает такие же как и у датаизменения. Англоязычный аналог datecreated.

размер: - Указывает какой размер должен быть у искомых файлов. Может принимать как точный значения вплоть до десятичных чисел, так и диапазон размеров. В качестве единицы измерения выступают Кб, Мб, Гб. Англоязычный параметр - size:.

размер: <=7Мб >1.5Мб - файлы больше 1,5 мегабайта, но меньше или равны 7.

атрибуты: - Задаёт дополнительную маску поиска по тегам. Параметр нечасто используется из-за того что редко используют теги.

автор: - Указывание автора, чьи файлы будут находиться.

владелец: - Поиск файлов определённого владельца.

исполнитель: - Указывание данного атрибута релевантно при поиске музыки того или иного исполнителя.

Комбинирование фильтрирующих опций

Можно использовать сразу несколько различных опций при поиске и это даже будет лучше, потому что сократит список найденных файлов, повыся при этом их релевантность. При нескольких поисковых фильтрах ставьте между ними пробел, фактически он заменяет оператора AND.

Внимание! Операторы И, ИЛИ НЕ никогда не подсвечиваются синим в строке поиска. Если у вас подсветились, значит вы забыли либо кавычки либо скобки либо что-то ещё. Обратите внимание что некоторые фильтры не могут работать с определёнными операторами. Например не может быть тип:(BMP И PNG), так как любой файл может быть только одного типа.

Например можно использовать запрос:

размер:5KB..20 KB тип:картинка имяфайла:

<"m" *little* датаизменения:‎01.‎03.‎2014 .. ‎31.‎03.‎2014

Данный запрос ищет изображения размером от 5 до 20 килобайт с именем файла, которое начинается с буквы m и в котором встречается слово little. При этом файл должен был быть изменён в течении марта 2014 года.

Как вы сами видите с такими возможностями можно легко искать файлы многолетней давности помня хоть какие-то мелочи о нём.

Несколько шаблонов

Для того чтобы вы лучше всё поняли и могли попробовать расширенный поиск Windows самостоятельно, мы решили сделать несколько наиболее часто использующихся шаблонов расширенного поиска, которые нередко могут пригодиться.

Как найти все файлы в папке?

Иногда человек хочет посчитать сколько файлов в той или иной папке и перед ним встаёт вопрос как это сделать. С помощью поиска Windows? Но тогда что вводить? Вводимое берёт начало у регулярных выражений и те кто знает не по наслышке что это такое уже догадался что за символ нужно вписать в поисковое поле.

В поисковое поле нужно ввести: * (Звёздочку).

Как найти все файлы одного типа (Расширения)?

Если вы хотите найти например только картинки используйте фильтр тип:картинка, а если вы желаете найти файлы определённого расширения, тогда можно использовать либо *.jpg либо тип:JPEG.

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

Для этого вам нужно использовать фильтр датасоздания:ДД/ММ/ГГГГ. О нём написано выше. Вы также можете ставить фильтр не по точному времени создания файла, а по промежутку. Например с сентября 2011 по декабрь 2012. О правильной постановке поискового запроса с таким фильтром, написано выше.

Как найти файлы определённого размера?

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

Мы очень надеемся что данный материал вам пригодится, а если вам есть что дополнить, тогда пишите в комментариях.

Шаблон поиска по словам Grep. Исключения каталогов и файлов.

grep - это мощный инструмент командной строки, который используется для поиска в одном или нескольких входных файлах строк, соответствующих регулярному выражению, и записывает каждую совпадающую строку в стандартный вывод.

Исключить слова и шаблоны

Чтобы отображать только те строки, которые не соответствуют поисковому шаблону, используйте параметр -v (или --invert-match ).

Например, чтобы напечатать строки, которые не содержат строку, nologin вы должны использовать:

-w Опция говорит grep вернуть только те строки , где указанная строка представляет собой целое слово (заключенные символы без слов).

По умолчанию учитывается grep регистр. Это означает, что символы верхнего и нижнего регистра рассматриваются как разные. Чтобы игнорировать регистр при поиске, вызовите grep с -i опцией.

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

Чтобы указать два или более шаблонов поиска, используйте -e опцию:

Вы можете использовать эту -e опцию сколько угодно раз.

Другой вариант исключения нескольких шаблонов поиска - объединение шаблонов с помощью оператора ИЛИ | .

В следующем примере печатаются строки, не содержащие строк nologin или bash :

GNU grep поддерживает три синтаксиса регулярных выражений: базовый, расширенный и совместимый с Perl. По умолчанию grep интерпретирует шаблон как базовое регулярное выражение, в котором метасимволы, например, | теряют свое особое значение, и вы должны использовать их версии с обратной косой чертой.

Если вы используете опцию расширенного регулярного выражения -E , то оператор | не следует экранировать, как показано ниже:

Вы можете указать различные возможные совпадения, которые могут быть буквальными строками или наборами выражений. В следующем примере games исключаются строки, в которых строка находится в самом начале строки:

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

Например, чтобы распечатать все запущенные процессы в вашей системе, кроме тех, которые выполняются как пользователь «root», вы можете отфильтровать вывод ps команды:

Исключить каталоги и файлы

Иногда при выполнении рекурсивного поиска с опциями -r или -R вы можете захотеть исключить определенные каталоги из результатов поиска.

Основное различие между параметрами -r или -R заключается в том, что когда grep вызывается с прописными буквами, R он будет следовать всем символическим ссылкам.

Чтобы исключить каталог из поиска, воспользуйтесь --exclude-dir опцией. Путь к исключенному каталогу относительно каталога поиска.

Вот пример, показывающий, как искать строку baksdev во всех файлах внутри /etc , за исключением /etc/pki каталога:

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

Например, чтобы найти файлы , которые содержат строку «Гну» в вашей системе Linux исключая proc , boot и sys каталоги , которые вы бы запустить:

При использовании сопоставления с подстановочными знаками вы можете исключить файлы, базовое имя которых совпадает с GLOB, указанным в --exclude опции.

В приведенном ниже примере мы ищем строку во всех файлах в текущем рабочем каталоге, за baksdev исключением файлов, оканчивающихся на .jpg и .jpg :

Читайте также: