https://github.com/divisionind/fastgrep
a utility for quickly scanning large numbers of files for a string
https://github.com/divisionind/fastgrep
debian grep linux scanning search searching tools utilities
Last synced: 2 months ago
JSON representation
a utility for quickly scanning large numbers of files for a string
- Host: GitHub
- URL: https://github.com/divisionind/fastgrep
- Owner: divisionind
- License: gpl-3.0
- Created: 2020-05-10T01:46:57.000Z (about 6 years ago)
- Default Branch: master
- Last Pushed: 2020-10-26T19:27:53.000Z (over 5 years ago)
- Last Synced: 2025-01-04T01:39:52.156Z (over 1 year ago)
- Topics: debian, grep, linux, scanning, search, searching, tools, utilities
- Language: C
- Homepage:
- Size: 4.06 MB
- Stars: 3
- Watchers: 2
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
fastgrep - a faster "grep -r"
--------

A utility similar to `grep -r ...` but focused on raw speed and utilization of system resources. This tool
is useful for quickly scanning large directories for files containing a specific string.
The intro gif is fastgrep scanning the entire, un-indexed, `1.15.1 craftbukkit` sources on a Kali Linux install
running on an 4-core laptop CPU (the `i7-8550U @ 1.8GHz`) for the string "createInventory". That is around 1 million
lines of code searched in under 100ms. The same scan would take grep several minutes.
```
$ cd ~/craftbukkit-1.15.1-src
$ cloc .
-------------------------------------------------------------------------------
Language files blank comment code
-------------------------------------------------------------------------------
Java 8099 200332 4926 959246
-------------------------------------------------------------------------------
SUM: 8099 200332 4926 959246
-------------------------------------------------------------------------------
```
This functionality can be very useful for developing or modding large, documented, codebases
(e.g. open-source or reverse engineered games, operating systems, etc.).
### IntelliJ IDEA Tool Integration
For more info see [this](intellij_tool/README.md).
### Building
##### Requirements
- Building: cmake, gcc
- Running: argp, pthread
##### Installing from binary release - Linux (Debian/Ubuntu)
```shell script
curl -fsSL https://raw.githubusercontent.com/divisionind/fastgrep/master/get_fastgrep.sh -o get_fastgrep.sh
sudo sh get_fastgrep.sh
```
##### Installing from source - Linux
1. Clone repo `git clone --recursive https://github.com/divisionind/fastgrep.git`
2. Enter directory `cd fastgrep`
3. Build locally and install `sudo sh install.sh`
_NOTE: The install script assumes apt as the package manager. If you are running a different package manager, install
the requirements and remove that section of the install script._
##### Windows
1. Download the latest windows installer from the [releases page](https://github.com/divisionind/fastgrep/releases)
2. Run the installer, make sure you select `Add fastgrep to the system PATH for all users`, complete installation
### Donate
- XMR: `83vzgeeKebLh6pj2YtBqn7PqxY47CkyzmLzUhmHfhTCQdj9Mfad4FUF12Yu9ry5uUh5JASTcXg5Fwji5ibjUngw9LomnH6Z`
- ETH: `0x1bdA7dB6484802DFf4945edc52363B4A8FAcb470`
- ETC: `0x4a368bb4cd854f650169ce207268c303ffecafb2`