Вийшов bfs 4.0.7: Багатопотоковий пошук файлів з покращеннями
Вийшов bfs 4.0.7: Багатопотоковий пошук файлів з поліпшеннями
15 червня відбувся випуск 4.0.7 багатопотокової консольної утиліти пошуку файлів bfs (Breadth-First Search, пошук у ширину), написаної мовою C та поширюваної за ліцензією BSD. Ця версія приносить кілька важливих покращень у роботі утиліти та виправлень помилок.
Основні зміни у версії bfs 4.0.7
У новій версії багатопотокового пошуку файлів bfs розробники внесли такі покращення:
- Для вибору кількості використовуваних потоків тепер використовується CPU affinity (
sched_getaffinity(...)
абоxsysconf(_SC_NPROCESSORS_ONLN)
). -execdir /bin/...
тепер дозволений навіть при відносному шляху у$PATH
.- Тести більше не залежать від утиліти
expect
. - Для відповідності GNU find тепер тільки останній аргумент
-files0-from
має ефект. - Виправлена помилка
-execdir {}
, випадково додана в bfs 4.0.
Про утиліту пошуку файлів bfs
Утиліта bfs є потужним інструментом для багатопотокового пошуку файлів у системі. На відміну від стандартної утиліти find, bfs використовує алгоритм пошуку в ширину, що дозволяє ефективніше обробляти великі файлові системи.
Крім того, bagfs пропонує підвищену продуктивність завдяки багатопотоковості, що особливо корисно на сучасних багатоядерних системах. Утиліта написана на мові C та поширюється за ліцензією BSD, що робить її доступною для широкого кола користувачів.
Переваги використання пошуку в ширину
Алгоритм пошуку в ширину, який використовує bfs, має значні переваги для пошуку файлів:
- Спочатку обробляються ближчі директорії, що часто видає результати швидше
- Рівномірніше розподіляє навантаження між потоками
- Зазвичай більш передбачуваний у поведінці
Завдяки цим особливостям, утиліта bfs стає незамінною для системних адміністраторів та розробників, які регулярно працюють з файловими системами.
Встановлення та використання
Встановити bfs можна з репозиторію GitHub або через пакетні менеджери багатьох Linux-дистрибутивів. Базове використання утиліти схоже на стандартний find, але з додатковими можливостями багатопотокового пошуку.
Для отримання додаткової інформації про нову версію та її функціональність можна відвідати офіційну сторінку релізу на GitHub.