Find

В Unix-подібних та деяких інших операційних системах, find - утиліта командного рядка, яка виконує пошук в одній чи більше директорії файлової системи, знаходить розташування файла, який відповідає певним критеріям заданим користувачем, і виконує певну вказану користувачем дію. Можливими критеріями для пошуку можуть бути, наприклад, співстановка з шаблоном його назви, чи часовий проміжок, в межах якого файл міг модифікуватись. За замовчуванням команда find повертає список всіх файлів в поточній робочій директорії та її піддиректоріях.

Пов'язана програма locate використовує базу даних проіндексованих файлів, отриманих за допомогою find (яка оновлюється через однорідні відрізки часу, зазвичай за допомогою cron), щоб організувати швидший метод пошуку по всій файловій системі за ім'ям. Це приносить в жертву загальну ефективність ОС (файлова система повинна регулярно скануватись) та точність пошуку (база даних не оновлюється в реальному часі) заради значного зростання швидкості пошуку (особливо з великими файловими системами). На швидких системах з невеликими обсягами зовнішньої пам'яті locate не обов'язкова й не бажана.

Синтаксис команди

find path... [expression]

Перед виразом який описує критерії пошуку потрібно задати хоча б один шлях, з якого починати пошук.

Елементи виразів розділяються пропусками і обчислюються зліва направо. Вони можуть містити як логічні елементи, такі як AND (-a) та OR (-o), так і складніші предикати.

GNU find має багато додаткових можливостей, не описаних стандартом POSIX.

Дивись також