#word-list #generator #cli

app wrdlist

Lightweight Wordlists Generator

4 releases

Uses new Rust 2024

new 0.0.5 Mar 19, 2025
0.0.4 Mar 10, 2025
0.0.3 Mar 10, 2025
0.0.2 Mar 9, 2025

#174 in Command line utilities

Download history 49/week @ 2025-03-03 267/week @ 2025-03-10 139/week @ 2025-03-17

455 downloads per month

MIT license

18KB
315 lines


wrdlist

A simple and efficient tool for generating custom word lists. Ideal for creating test data, pattern-based combinations, and structured text sequences.


Features

  • Quickly generate custom word lists with simple commands.
  • Easy-to-understand pattern syntax for flexible generation.
  • View results in the terminal or save them to a file.
  • Handle large outputs efficiently with file size warnings.
  • Randomize or reverse the order of results.

Installation

Install Required Tools

Before installing wrdlist, you need to install the necessary tools depending on your distribution.

Arch Linux:

sudo pacman -S rust

Debian/Ubuntu:

sudo apt install rustc cargo

Fedora:

sudo dnf install rust

Install wrdlist Using Cargo

After installing the required tools, you can install wrdlist using the cargo tool (Rust's package manager):

cargo install wrdlist

To make sure wrdlist is globally accessible, you can copy it to /usr/bin and make it executable:

sudo cp ~/.cargo/bin/wrdlist /usr/bin
sudo chmod +x /usr/bin/wrdlist

Install from AUR (Arch Linux)

You can install wrdlist directly from the AUR using an AUR helper like yay:

yay -S wrdlist

Build and Install wrdlist Manually

If you want to build wrdlist from source, follow these steps:

git clone https://github.com/username/wrdlist.git
cd wrdlist
make install

To uninstall:

make uninstall

Usage

wrdlist [OPTIONS] <PATTERN> [OPTIONAL]

Arguments:

  • <PATTERN>
    The pattern to generate the wordlist (must be enclosed in double quotes).

Options:

  • -r, --random
    Randomize the order of the wordlist.

  • -i, --inverse
    Reverse the order of the wordlist.

  • -h, --help
    Print help information.

  • -v, --version
    Print version information.

Pattern Syntax:

  • . with a character to keep it fixed in every word (.a means 'a' stays in place).
  • [start-end] for numeric ranges ([1-3] will generate 1, 2, 3).
  • ! for any lowercase letter (a-z).
  • @ for any uppercase letter (A-Z).
  • # for any digit (0-9).
  • % for any symbol (!@#$%^&*?).

Optional:

  • -o, --output <OUTPUT>
    Save the wordlist to a file.

Example Usage

# Generate a list of lowercase letters followed by digits
wrdlist "#.!"

# Randomize the order of a word list
wrdlist -r "[9-13]"

# Generate a list of numbers from 1 to 3, reversed
wrdlist -i ".#[1-5]._.X.d"

...more in wrdlist --help 

Note: Patterns must be enclosed in double quotes. For complex patterns, check how the output will look before continuing.


Performance

This tool is designed to be lightweight and efficient. It calculates the expected file size before generating large word lists to avoid storage issues. You'll receive a warning if the output is too large, allowing you to decide whether to continue or cancel.


Dependencies

~3MB
~46K SLoC