quewuigrep

Crates.ioquewuigrep
lib.rsquewuigrep
version0.1.1
sourcesrc
created_at2024-07-28 01:37:21.498745
updated_at2024-07-28 02:07:20.28846
descriptionA simple grep-like tool written in Rust.
homepage
repository
max_upload_size
id1317650
size9,435
Kaue Pereira (kauefontes)

documentation

README

Quewuigrep

Quewuigrep is a command-line utility for searching a word or phrase in a file. It mimics the functionality of the classic grep command but is implemented in Rust. This tool allows you to perform both case-sensitive and case-insensitive searches.

Features

  • Case-sensitive search: Search for a word or phrase while considering the case.
  • Case-insensitive search: Search for a word or phrase ignoring the case.
  • Simple and fast: Built with Rust for performance and safety.

Installation

To install Quewuigrep, you need to have Rust installed on your machine. If you don't have Rust installed, you can get it from rust-lang.org.

Clone the repository and build the project:

sh git clone https://github.com/yourusername/quewuigrep.git cd quewuigrep cargo build --release

The executable will be located in the target/release directory.

Usage

To use Quewuigrep, run the following command:

sh ./quewuigrep <query> <filename>

  • <query>: The word or phrase you want to search for.
  • <filename>: The file in which to search.

Example

sh ./quewuigrep "search_term" example.txt

Case-insensitive Search

To perform a case-insensitive search, set the CASE_INSENSITIVE environment variable:

sh CASE_INSENSITIVE=1 ./quewuigrep "search_term" example.txt

Project Structure

  • main.rs: The entry point of the application. It handles argument parsing and calls the run function.
  • lib.rs: Contains the core functionality, including the Config struct, run function, and search functions.

Running Tests

To run the tests, use the following command:

sh cargo test

Contributing

Contributions are welcome! Please open an issue or submit a pull request on GitHub.

License

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

Commit count: 0

cargo fmt