awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
jhspetersson avatar

jhspetersson/fselect

0
View on GitHub↗
4,451 stars·87 forks·Rust·Apache-2.0·23 viewsfselect.rocks↗

Fselect

fselect is a command line utility and file metadata query engine that uses SQL-like syntax to filter and find files based on their attributes. It functions as a file system analysis tool capable of selecting files and directories using relational logic, subqueries, and structured data filtering.

The tool distinguishes itself by integrating Git tracking status and branch metadata into the search process while respecting project ignore files. It also includes a specialized media metadata search capability that filters audio and image files by technical properties such as resolution, bitrate, and EXIF tags.

The project covers a broad range of capabilities, including file system forensics through SHA-256 hash inspection and POSIX permission auditing. It supports complex pattern matching with regular expressions and globs, content searching within file bodies and ZIP archives, and the calculation of aggregate statistics like sums and averages across result sets.

Users can execute queries through an interactive read-eval-print loop or export structured results into formats such as CSV and JSON for external reporting.

Features

  • File System Querying - Uses a relaxed SQL grammar to filter, select, and sort files and directories based on their attributes.
  • Relational File Searching - Provides advanced file system searching using complex SQL queries, boolean logic, and regular expressions.
  • Git Status Filters - Filters files based on Git tracking status, current branches, and commit metadata.
  • Statistical Aggregators - Computes summary statistics like minimum, maximum, average, and sum for file properties across result sets.
  • SQL-like Queries - Translates SQL-like syntax into logical execution plans to filter and select files based on attributes.
  • Local File Query Engines - Functions as a high-performance engine for selecting files and directories using relational logic and subqueries.
  • Metadata Filtering - Evaluates file properties and technical metadata as relational columns to enable complex search logic.
  • File Metadata Filters - Filters files using attributes such as size, MIME type, file hashes, and POSIX ACLs.
  • Git-Aware File Listings - Integrates Git tracking status and branch metadata directly into file search and listing results.
  • Metadata Integration - Integrates Git tracking status and branch metadata directly into the file search process.
  • File System Statistics - Provides capabilities to compute aggregate statistics such as sums and averages across file sets.
  • Ignore File Parsers - Respects .gitignore and other ignore-file configurations to exclude files from search results.
  • Metadata-Based Media Searches - Filters audio and image files using technical metadata including resolution, bitrate, and EXIF tags.
  • Aggregate Calculations - Implements SQL-style aggregation functions to calculate sums, averages, and counts across file result sets.
  • Virtual Filesystems - Unifies physical disks, ZIP archives, and web environments into a single virtual directory structure for querying.
  • Media Library Managers - Locates images and audio files based on embedded technical metadata like resolution and bitrate.
  • File-Type Search Filtering - Identifies files by category, such as images or source code, using boolean shortcuts.
  • System File Indexers - Accelerates file discovery by integrating with existing system indexes to avoid expensive recursive directory traversals.
  • File Timestamp Filtering - Matches files based on creation, modification, or access timestamps using absolute dates or relative time intervals.
  • Regex-Based File Content Searches - Locates files by searching for specific text strings or regular expressions within the file bodies.
  • Git Repository Explorers - Allows searching for files within projects while filtering by branch status and commit metadata.
  • File Pattern Matching - Finds files using standard globs, SQL-style LIKE patterns, and regular expressions.
  • Read-Eval-Print Loops - Features an interactive REPL for executing file queries and navigating directories.
  • Media Metadata Filtering - Filters audio and image files using technical metadata such as resolution, bitrate, and EXIF tags.
  • Database REPL Shells - Provides an interactive shell for executing SQL-like queries and navigating directories without shell escaping.
  • File Hashing Utilities - Calculates SHA-256 checksums to identify duplicate files and verify data integrity.
  • POSIX Permission Auditing - Filters files by ownership, mode, SUID bits, sticky bits, POSIX ACLs, and Linux capabilities.
  • Local Forensic File Scanning - Performs forensic analysis by calculating SHA-256 hashes and auditing POSIX permissions.
  • File Set Relational Comparisons - Compares files across different directories using correlated subqueries and relational operators like IN and EXISTS.
  • CLI Utilities - Find replacement with SQL-like syntax.
  • Search and Discovery - Find files with SQL-like queries.
  • Terminal Productivity - SQL-like file search queries.
  • File Management - SQL-like file search utility.

Star history

Star history chart for jhspetersson/fselectStar history chart for jhspetersson/fselect

How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Projects sharing features with Fselect

These projects share indexed features with Fselect. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • canop/brootCanop avatar

    Canop/broot

    12,740View on GitHub↗

    Broot is an interactive terminal file manager designed for navigating, searching, and manipulating complex file system hierarchies. It provides a visual tree-based interface that allows users to explore disk contents, manage file operations, and execute shell commands directly within the command line environment. The tool distinguishes itself through real-time fuzzy searching and recursive tree traversal, which filter directory structures as you type to maintain a clear, relevant view of the file system. It integrates version control status directly into the navigation view, displaying branch

    Rustbalanced-bfs-descentcommand-linecommand-line-tool
    View on GitHub↗12,740
  • sharkdp/fdsharkdp avatar

    sharkdp/fd

    43,362View on GitHub↗

    This project is a high-performance command-line utility designed for rapid filesystem navigation and file discovery. It enables users to locate files and directories within large project structures using recursive search, pattern matching, and metadata-aware filtering. By employing multi-threaded parallel traversal, it provides an efficient way to explore complex directory trees. What distinguishes this tool is its ability to integrate directly into terminal workflows and automate file management tasks. It automatically respects version control ignore files and hidden file settings, ensuring

    Rustclicommand-linefilesystem
    View on GitHub↗43,362
  • burntsushi/ripgrepBurntSushi avatar

    BurntSushi/ripgrep

    65,112View on GitHub↗

    ripgrep is a command-line utility designed for searching through large file trees and source code repositories. It functions as a recursive text processor that traverses directories to locate and display matching patterns, serving as a high-performance alternative to traditional search tools. The tool distinguishes itself through a focus on execution speed and intelligent file handling. It utilizes a finite automata-based regular expression engine to ensure linear time complexity and employs hardware-level acceleration for literal byte sequence scanning. By integrating with version control sy

    Rustclicommand-linecommand-line-tool
    View on GitHub↗65,112
  • junegunn/fzfjunegunn avatar

    junegunn/fzf

    81,017View on GitHub↗

    This project is a general-purpose command-line filter that provides an interactive interface for processing standard input streams. It enables real-time fuzzy searching, data selection, and transformation, allowing users to navigate complex information or file systems directly within their terminal. By utilizing a pipe-oriented architecture, it integrates into existing shell pipelines and workflows to facilitate efficient data exploration. What distinguishes this tool is its highly extensible, event-driven design that allows for deep integration with external processes. It supports asynchrono

    Gobashclifish
    View on GitHub↗81,017
Compare all 30 related projects→

Frequently asked questions

What does jhspetersson/fselect do?

fselect is a command line utility and file metadata query engine that uses SQL-like syntax to filter and find files based on their attributes. It functions as a file system analysis tool capable of selecting files and directories using relational logic, subqueries, and structured data filtering.

What are the main features of jhspetersson/fselect?

The main features of jhspetersson/fselect are: File System Querying, Relational File Searching, Git Status Filters, Statistical Aggregators, SQL-like Queries, Local File Query Engines, Metadata Filtering, File Metadata Filters.

Which projects share features with jhspetersson/fselect?

Projects with overlapping indexed features include: canop/broot — Broot is an interactive terminal file manager designed for navigating, searching, and manipulating complex file system… sharkdp/fd — This project is a high-performance command-line utility designed for rapid filesystem navigation and file discovery.… burntsushi/ripgrep — ripgrep is a command-line utility designed for searching through large file trees and source code repositories. It… junegunn/fzf — This project is a general-purpose command-line filter that provides an interactive interface for processing standard… dorny/paths-filter — paths-filter is a GitHub Actions path filter and git change detector designed to trigger conditional workflow steps by… kashav/fsql — fsql is a command line interface tool that provides a SQL-like query language for finding files and directories on a…