https://github.com/josiahbull/dexy
A multithreaded recursive file indexer
https://github.com/josiahbull/dexy
Last synced: 3 months ago
JSON representation
A multithreaded recursive file indexer
- Host: GitHub
- URL: https://github.com/josiahbull/dexy
- Owner: JosiahBull
- License: mit
- Created: 2022-04-19T02:23:40.000Z (about 3 years ago)
- Default Branch: main
- Last Pushed: 2022-04-21T03:25:22.000Z (about 3 years ago)
- Last Synced: 2025-03-11T05:48:33.809Z (3 months ago)
- Language: Rust
- Size: 21.5 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: readme.md
- License: LICENSE
Awesome Lists containing this project
README
# Dexy
Dexy is a command line utility for recursively generating sha256 hashes of all files in a directory.
Dexy will output aJSON file containing the hashes of all files that were found, note that on slower media such as hard drives the scan may take quite some time.
If there are multiple files that have the same hash, they will be grouped together in a single entry
## Example Usage
```bash
cargo run --release -- --ignore-empty --load-file-attributes --name docs /home/$USER/Documents
```
## Example Output
```json
{
"3e155b0d8756c752021b64e8d39ac7d73dd9e451e55bdfc70d231af773c3b813": [
{
"hash": "3e155b0d8756c752021b64e8d39ac7d73dd9e451e55bdfc70d231af773c3b813",
"path": "/home/josiah/Documents/rust-chat-app/target/doc/itertools/structs/struct.PadUsing.html",
"attributes": {
"size": 405813,
"created_date": 1639433284,
"accessed_date": 1650427097,
"edit_date": 1639433284,
"file_type": "File"
}
}
],
}
```## Full Avaiable Options
```
USAGE:
dexy [OPTIONS] ...ARGS:
... List of directories to scanOPTIONS:
-h, --help
Print help information-i, --ignore-empty
Whether empty files (e.g. files with 0 bytes) should be ignored. This is primarily
useful for avoiding many ""duplicate"" empty files--include-hidden
By default the program will exclude hidden files/folders, this will force it to include
them-l, --load-file-attributes
Output size and other file information with the scan, note this makes an extra request
to the underlying system, so may add some time to the inital scan-n, --name
Name of the scan, this will be used to name the output files [default: dexy]-o, --out
Output Directory [default: ./]-t, --thread-count
Number of threads to process default = number of cores [default: 16]-V, --version
Print version information
```