baalimago
repeater
Go

xargs, but different..! Better at some things (repeating stuff), worse at others (not repeating stuff).

Last updated Jul 2, 2026
64
Stars
0
Forks
0
Issues
0
Stars/day
Attention Score
50
Language breakdown
Go 92.8%
Shell 7.2%
โ–ธ Files click to expand
README

repeater

A tool which repeats a command n amounts of time, with paralellisation and slight tweaks.

Test coverage: 53.700% ๐Ÿ˜Œ๐Ÿ‘

repeatoopher

Installation

go install github.com/baalimago/repeater@latest

You may also use the setup script:

curl -fsSL https://raw.githubusercontent.com/baalimago/repeater/main/setup.sh | sh

Usage

Usecases:

  • CRUD state using curl as fast as you have network sockets
  • Paralellize repetitive shell-scripts
  • Ghetto benchmarking
repeater \
    -n 100 # repeat 100 times \
    -w 10  # using 10 workers \
    -output FILE               # with command output written to FILE \
    -progress BOTH             # with progress written to BOTH STDOUT and FILE \
    -file ./runoutput         # with FILE ./runoutput \
    -result ./run_result       # with result (output + time taken) for each command \
    curl example.com           # command to repeat
# This will print "this is increment: 1\nthis is increment: 2\n..."
repeater -n 100 -output STDOUT -progress HIDDEN -increment echo "this is increment: INC"

Show all available flags

repeater -h

Benchmarks

repeater outperforms many other parallizers, including GNU parallel and xargs.

Run ./benchmark.sh to try out repeaters performance vs similar parallelization tools. You may benchmark any command that you want, simply run ./benchmark.sh <MAX RUNS> <YOUR COMMAND>. It will run the command with repeater, parallel and xargs and print the time taken for each by starting to repeat the command 10 times then 100, 1000, etc up until <MAX_RUNS>. Note that ./benchmark.sh will break if it detects and diffs in the output of the commands, so ensure the commands output is deterministic.

๐Ÿ”— More in this category

ยฉ 2026 GitRepoTrend ยท baalimago/repeater ยท Updated daily from GitHub