Skip to main content

SQL-like interface for querying files in your filesystem

Project description

File Query

A SQL-like interface for querying files in your filesystem.

Installation

# Clone the repository
git clone https://github.com/yourusername/file-query.git
cd file-query

# Install with pip
pip install -e .

# Or use UV
uv run python -m src.cli "your query"

# Install as a permanent tool with UV
uv tool install .
# This will install the 'fq' command

Usage

Command Line

The quickest way to run file-query is with UV:

uv run python -m src.cli "your query here"

After installation, you can use the shorthand command:

fq "your query here"

Basic Usage

# Find all Python files
fq "extension == 'py'"

# Find all text files and show their content
fq "extension == 'txt'" --show-content

Advanced Queries

File Query supports full SQL-like syntax:

# Find all Python files in the src directory
fq "SELECT * FROM 'src' WHERE extension == 'py'"

# Find all files larger than 100KB
fq "SELECT * FROM '.' WHERE size > 102400"

# Complex conditions
fq "SELECT * FROM '.' WHERE (extension == 'pdf' AND size > 1000000) OR (extension == 'txt' AND NOT name == 'README.txt')"

Query Syntax

File Query uses a SQL-like syntax:

SELECT * FROM 'directory_path' WHERE condition

Available Attributes

  • extension: File extension (without the dot)
  • name: Filename with extension
  • size: File size in bytes
  • path: Full file path

Operators

  • Comparison: ==, !=, <, <=, >, >=
  • Logical: AND, OR, NOT

Examples

# Find all PDF files
fq "extension == 'pdf'"

# Find all files not named "main.py"
fq "NOT name == 'main.py'"

# Find all large image files
fq "SELECT * FROM '.' WHERE (extension == 'jpg' OR extension == 'png') AND size > 500000"

# Find files with 'config' in their path
fq "path == '.*config.*'"

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

file_query_text-0.1.4.tar.gz (7.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

file_query_text-0.1.4-py3-none-any.whl (7.0 kB view details)

Uploaded Python 3

File details

Details for the file file_query_text-0.1.4.tar.gz.

File metadata

  • Download URL: file_query_text-0.1.4.tar.gz
  • Upload date:
  • Size: 7.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.5.2

File hashes

Hashes for file_query_text-0.1.4.tar.gz
Algorithm Hash digest
SHA256 c21d88b2b16116e089f10533afbae1ea85d1091f89427f3e115b4a2a31b116fc
MD5 bfff86d1d4f60d5b9a5d052c4084d2a2
BLAKE2b-256 8a626eb69b82ae9a5a6618f650fe60b458be0c2a8567571fa76d01d967c5963e

See more details on using hashes here.

File details

Details for the file file_query_text-0.1.4-py3-none-any.whl.

File metadata

File hashes

Hashes for file_query_text-0.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 1ba35016dfaced9e8034edcbb59c5c3a159025a5a02d463d6e5bc63688cd19a3
MD5 8f6635908e8331b59d54db21c0ab44f2
BLAKE2b-256 a6d2ae2fa4fa6da0c8d7740890cb2f572b009f765667b18523b541d0bca4f4a2

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page