A CLI tool that indexes a given folder and allows efficient searching for string occurrences.
Date of creation: May, 2024
- Clone the repository
git clone https://github.com/AStroCvijo/Indexer
- Make sure you have gradle installed on your machine
- Add Gradle to the PATH variable
- Use the command
gradle build
to build the app - Set up
allowedExtensions.txt
file in the root directory e.g.
txt
kt
py
- Use the command
gradlew run --args=""
to run the app
-path or -p
followed by path to the folder you want to index e.g. .\\Data
This will index the .\\Data
folder and save it to .\\indexedFolders
(the starting location of .\\ is inside the app folder, so either move to folder you want to index there or navigate to it)
-force or -f
This will force the app to index the folder again and save it to .\\indexedFolders
(if you don't force a re-index, and the folder has already been indexed, the app will just load it)
-query or -q
followed by the string you want to search for e.g. print
This will print all the occurrences of print
in the given folder
-case or -c
This will indicate that you want the search to be case-sensitive
-highlight or -h
This will print the line in which the string is located and highlight it
Command | Description |
---|---|
gradlew run --args="-p .\\Data" |
Index a Folder Without Re-indexing or Querying |
gradlew run --args="-p .\\Data -f" |
Index a Folder and Force Re-indexing |
gradlew run --args="-p .\\Data -q print" |
Index a Folder and Query Without Case Sensitivity |
gradlew run --args="-p .\\Data -q print -h" |
Index a Folder, Query Without Case Sensitivity and Highlight |
gradlew run --args="-p .\\Data -f -q print" |
Index a Folder, Force Re-indexing, and Query Without Case Sensitivity |
gradlew run --args="-p .\\Data -q print -c" |
Index a Folder, Query with Case Sensitivity |
gradlew run --args="-p .\\Data -f -q print -c" |
Index a Folder, Force Re-indexing, and Query with Case Sensitivity |
gradlew run --args="-p .\\Documents -q print" |
Index a Different Folder and Query Without Case Sensitivity |
gradlew run --args="-p .\\AnotherFolder -f -q print -c" |
Index a Folder, Force Re-indexing, and Perform Case-sensitive Search |