Skip to main content

A powerful, format-agnostic search tool

Project description

Super Grep

GitHub stars GitHub license PyPI version

IMPORTANT: This is alpha software. If you have any version below 0.1.4, please update to 0.1.4 or later. There have been significant changes to the logic that processes the search pattern.

Super Grep is a powerful, format-agnostic search tool that allows you to search for patterns in files and directories with ease. It supports various naming conventions and provides options for controlling search depth, file content searching, and output colorization.

Features

  • Format-agnostic pattern matching (supports camelCase, snake_case, PascalCase, kebab-case, Title Case, Capitalized With Spaces, etc.)
  • Configurable search depth
  • File content searching
  • Colorized output option
  • Multi-process search for improved performance
  • Depth-controlled directory search
  • File name only search option
  • Stop on first match option
  • Option to hide directory paths in output
  • Option to show only file names with matches

Installation

You can install Super Grep using pip:

pip install super-grep

Usage

After installation, you can use the super-grep command directly from your terminal:

super-grep [OPTIONS] DIRECTORY PATTERN

Options

  • --workers NUMBER: Number of worker processes (default: CPU count)
  • --contents: Search within file contents (default: search filenames only)
  • --color: Colorize the output
  • --depth NUMBER: Depth of directory search (default: 0, search only in given directory; use -1 for unlimited depth)

Examples

  1. Search only in the given directory:

    super-grep /path/to/search "FooBar|first_name"
    
  2. Search up to 2 levels deep:

    super-grep /path/to/search "FooBar|first_name" --depth 2
    
  3. Search all subdirectories:

    super-grep /path/to/search "FooBar|first_name" --depth -1
    
  4. Search file contents up to 3 levels deep with colored output:

    super-grep /path/to/search "FooBar|first_name" --depth 3 --contents --color
    
  5. Use 8 worker processes:

    super-grep /path/to/search "FooBar|first_name" --workers 8
    
  6. Hide the directory path in the output:

    super-grep /path/to/search "getValueFromSection" -H
    
  7. Show only filenames and stop on the first match:

    super-grep /path/to/search "getValueFromSection" -H -s
    

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

Support the Project

If you find Super Grep useful, please consider supporting its development. See the SUPPORT.md file included in this package for more information on how you can contribute.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Supporting Super Grep

If you find Super Grep useful and would like to support its development, there are several ways you can contribute:

Financial Support

You can make a financial contribution to the project via:

Other Ways to Support

  • Star the project on GitHub
  • Report bugs or suggest features by opening issues on GitHub
  • Contribute code by submitting pull requests
  • Spread the word about Super Grep to your colleagues and friends

Your support, in any form, is greatly appreciated and helps to ensure the continued development and maintenance of Super Grep. Thank you!

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

super_grep-0.1.6.tar.gz (7.6 kB view details)

Uploaded Source

Built Distribution

super_grep-0.1.6-py3-none-any.whl (8.1 kB view details)

Uploaded Python 3

File details

Details for the file super_grep-0.1.6.tar.gz.

File metadata

  • Download URL: super_grep-0.1.6.tar.gz
  • Upload date:
  • Size: 7.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.6

File hashes

Hashes for super_grep-0.1.6.tar.gz
Algorithm Hash digest
SHA256 4c3db853c7333630e0011fdcdcc5b3c4b412f52b018e5619234b59da71b632a5
MD5 98b7459356591d5a838ea1620be5947f
BLAKE2b-256 3798ff5e25b981764993c48f49494d417b08aa0a3bc5fd10b6fbb5bb439bb2c4

See more details on using hashes here.

File details

Details for the file super_grep-0.1.6-py3-none-any.whl.

File metadata

  • Download URL: super_grep-0.1.6-py3-none-any.whl
  • Upload date:
  • Size: 8.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.6

File hashes

Hashes for super_grep-0.1.6-py3-none-any.whl
Algorithm Hash digest
SHA256 dc4cf8b28e877bc335508fd5d826dfff6c1416ece6ae2862ec0d8e4a9b83cab3
MD5 bf738bc70ef5b26ba4dc82097dbbf27e
BLAKE2b-256 2f27422d9a5c6bc2413f778c9d37a6d9f50c2d759ae9760d5ce65d05179abaf5

See more details on using hashes here.

Supported by

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