find

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до: навігація, пошук

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

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

Синтаксис команди[ред.ред. код]

find path... [expression]

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

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

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

Дивись також[ред.ред. код]