> For the complete documentation index, see [llms.txt](https://olexsyn.gitbook.io/enote/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://olexsyn.gitbook.io/enote/linux/commands/find.md).

# find

Встановити дозвіл 755 на всі директорії:

```
find ./meteo.pp.ua -type d -exec chmod 755 {} \;
```

Встановити дозвіл 644 на всі файли:

```
find ./meteo.pp.ua -type f -exec chmod 644 {} \;
```

Встановити дозвіл 755 на всі файли з розширенням `.py` ("лапки" обов’язково!) :&#x20;

```
find ./meteo.pp.ua -type f -name "*.py" -exec chmod 755 {} \;
```

Найти только файлы не соответствующие запросу

```
 find . ! -name '*.jpg'
```

Используйте \`-regex' вместо \`-name' для поиска файлов, имена которых удовлетворяют регулярному выражению, или образцу, описывающему несколько строк.

Чтобы увидеть все файлы в текущем каталоге, имена которых содержат строку \`net' или \`comm', наберите:

```
   find . -regex '.*\(net\|comm\).*' [Enter]
```

*Примечание:* Опция \`-regex' совпадает с полным именем файла относительно указанного каталога, а не с отдельным именем файла.

{% embed url="<https://habr.com/ru/companies/first/articles/593669/>" %}

{% embed url="<https://habr.com/ru/companies/alexhost/articles/525394/>" %}

Если нужно указать несколько каталогов или несколько параметров поиска, это делается перечислением.

<figure><img src="https://younglinux.info/sites/default/files/images/linux-bash/find2.png" alt="Поиск в нескольких каталогах, поиск с двумя ключами"><figcaption></figcaption></figure>

Здесь в двух каталогах выполняется поиск файлов png, размер которых больше 5 килобайт. Шаблон записан в кавычках, иначе не работает.

Если с найденными файлами надо что-то сделать, используется ключ `-exec`.

<figure><img src="https://younglinux.info/sites/default/files/images/linux-bash/find-exec.png" alt="Пример использования ключа -exec команды find"><figcaption></figcaption></figure>

В примере ищутся файлы, оканчивающиеся на txt. Каждый **найденный** передается команде `cp` (файл подставляется на место фигурных скобок). Команда `cp` копирует файл в каталог Загрузки. Конец аргумента `exec` обозначается обратным слэшем и точкой с запятой.
