Repolode
tavianator

tavianator/bfs

얕은 경로의 파일부터 나열하는 UNIX find의 breadth-first 변형으로, POSIX 및 BSD/GNU find와 호환됩니다.

스타
1,282
포크
44
열린 이슈
15
마지막 커밋
9일 전

어떤 프로젝트인가요?

bfs는 디렉터리 트리를 depth-first 대신 breadth-first로 탐색하는 UNIX find 변형입니다. 얕은 경로부터 깊은 경로 순으로 파일을 나열하므로, 찾는 파일에 도달하기 전에 관련 없는 깊은 하위 트리를 모두 탐색할 때까지 기다릴 필요가 없습니다.

POSIX, GNU, FreeBSD, OpenBSD, NetBSD, macOS를 비롯한 여러 find 버전과의 호환성을 목표로 합니다. 여기에 더해 자주 쓰는 작업을 편리하게 해 줍니다. 인수를 어떤 순서로든 지정할 수 있고, 옵션에 오타가 있으면 수정 제안을 보여 주며, 결과가 무시되는 표현식은 정적 분석 단계에서 경고합니다. 또한 하위 트리 전체를 건너뛰는 -exclude 연산자와 숨김 파일을 건너뛰는 -nohidden을 추가합니다.

bfs는 C로 작성되었으며, 여러 Linux, macOS, BSD 패키지 관리자에서 설치할 수 있고 configure 및 make 방식으로 빌드할 수 있습니다. ACL, attr, libcap, liburing, oniguruma 같은 시스템 라이브러리를 선택적으로 사용하면 추가 기능을 이용할 수 있습니다.

핵심 기능

  • 01breadth-first 방식으로 파일을 나열해 얕은 경로의 항목이 깊은 하위 트리보다 먼저 표시됩니다.
  • 02엄격한 find와 달리 옵션과 표현식을 유연한 위치에 지정할 수 있습니다.
  • 03인수를 잘못 입력하면 수정 제안을 보여 줍니다.
  • 04결과가 무시되는 표현식에 대해 경고합니다.
  • 05하위 트리 전체를 건너뛰는 -exclude와 숨김 파일을 건너뛰는 -nohidden을 제공합니다.

활용 사례

  • 대규모 프로젝트 트리에서 파일의 깊이를 모를 때 파일을 찾습니다.
  • 익숙한 조건식과 옵션을 유지하면서 스크립트에서 find를 대체합니다.
  • -exclude를 사용해 .git이나 기타 원치 않는 폴더를 건너뛰며 디렉터리 트리를 검색합니다.

빠른 시작

  1. 1

    macOS에서 Homebrew로 설치

    brew install bfs
  2. 2

    또는 Linux 배포판의 패키지 관리자(예: Arch Linux)에서 설치

    pacman -S bfs
  3. 3

    또는 소스에서 빌드: 릴리스를 다운로드하거나 저장소를 클론한 다음 configure와 make를 실행

    ./configure && make

사용 전 알아둘 점

  • 소스에서 빌드하려면 C 컴파일러, GNU make, Bash가 필요하며, 모든 기능을 사용하려면 선택적 시스템 라이브러리가 추가로 필요할 수 있습니다.

포함된 컬렉션

토픽

자주 묻는 질문

bfs은(는) 무엇인가요?
얕은 경로의 파일부터 나열하는 UNIX find의 breadth-first 변형으로, POSIX 및 BSD/GNU find와 호환됩니다. bfs는 디렉터리 트리를 depth-first 대신 breadth-first로 탐색하는 UNIX find 변형입니다. 얕은 경로부터 깊은 경로 순으로 파일을 나열하므로, 찾는 파일에 도달하기 전에 관련 없는 깊은 하위 트리를 모두 탐색할 때까지 기다릴 필요가 없습니다.
bfs은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
bfs은(는) 0BSD 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
bfs은(는) 아직 유지보수되고 있나요?
활발히 유지보수 중. bfs의 마지막 커밋은 2026년 10월 13일입니다.
bfs은(는) 어디에 사용할 수 있나요?
대규모 프로젝트 트리에서 파일의 깊이를 모를 때 파일을 찾습니다. 익숙한 조건식과 옵션을 유지하면서 스크립트에서 find를 대체합니다. -exclude를 사용해 .git이나 기타 원치 않는 폴더를 건너뛰며 디렉터리 트리를 검색합니다.
bfs는 어떻게 설치하나요?
macOS에서 Homebrew로 설치: brew install bfs 또는 Linux 배포판의 패키지 관리자(예: Arch Linux)에서 설치: pacman -S bfs 또는 소스에서 빌드: 릴리스를 다운로드하거나 저장소를 클론한 다음 configure와 make를 실행: ./configure && make
bfs은(는) 어디서 받을 수 있나요?
소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/tavianator/bfs

요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.

관련 프로젝트