whatisgithub

What is bashumerate?

wallach-game/bashumerate — explained in plain English

Analysis updated 2026-05-18

71ShellAudience · developerComplexity · 2/5LicenseSetup · easy

In one sentence

A fast command line tool for running the same command repeatedly over files, lines, ranges, or lists, built as a quicker alternative to xargs.

Mindmap

mindmap
  root((bashumerate))
    What it does
      Enumerates files lines ranges
      Runs a command per item
      Supports parallel execution
    Tech stack
      Bash
      Shell scripting
    Use cases
      Batch file processing
      URL list downloading
      Custom enumerator sources
    Audience
      Developers
      Shell script users

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Run the same shell command on every file matching a glob pattern.

USE CASE 2

Loop over lines from a file or piped input, such as a list of URLs, and run a command on each.

USE CASE 3

Iterate over a numeric range or a literal list of items in a shell script.

USE CASE 4

Replace slower xargs or find -exec usage in scripts that process many items.

What is it built with?

ShellBash

How does it compare?

wallach-game/bashumerateedengilbertus/terminalphoneduolahypercho/fusion-fable
Stars717170
LanguageShellShellShell
Setup difficultyeasymoderateeasy
Complexity2/53/52/5
Audiencedevelopergeneraldeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · easy Time to first run · 5min
Use freely for any purpose, including commercial use, as long as you keep the copyright notice.

So what is it?

Bashumerate is a command line tool that helps you run the same command over and over on a list of items, such as a group of files, the lines of a text file, or a range of numbers. It is meant as a faster, easier to use alternative to older tools like xargs and find with the exec option, which are often used for this exact kind of repeated command running in a terminal. You give the tool one of four kinds of input: a set of files matching a pattern, the lines from a file or from piped input, a numeric range like one to ten, or a plain list of items you type directly. Whatever you provide gets fed one at a time into a command you specify, with a placeholder symbol standing in for each individual item. For example, you could count the lines in every shell script in a folder, or download a list of web addresses one by one from a text file. It also includes some extra conveniences: filtering which items get included or excluded by pattern, running commands in parallel instead of one at a time, a dry run mode that shows you what would happen without actually running anything, and a quiet mode that hides error messages. Developers can add entirely new kinds of input sources by writing a small shell script file, and the README shows an example that lists running Docker containers as a custom source. According to the README's own benchmarks, run on a many core desktop processor, bashumerate is roughly ten to twenty five times faster than xargs for running a command on each of many items, mainly because it avoids writing temporary files and starting a new process for every single item. The project includes its own benchmark script so you can measure this on your own machine, and it ships with a test suite using the bats testing framework. It is written in shell script and released under the MIT license.

Copy-paste prompts

Prompt 1
Help me install bashumerate using basher or manually on my machine.
Prompt 2
Show me how to use enumerate to run a command over every markdown file except the README.
Prompt 3
Explain how to add a custom Docker container source to bashumerate.
Prompt 4
Walk me through running bashumerate's own benchmark script to compare it against xargs.

Frequently asked questions

What is bashumerate?

A fast command line tool for running the same command repeatedly over files, lines, ranges, or lists, built as a quicker alternative to xargs.

What language is bashumerate written in?

Mainly Shell. The stack also includes Shell, Bash.

What license does bashumerate use?

Use freely for any purpose, including commercial use, as long as you keep the copyright notice.

How hard is bashumerate to set up?

Setup difficulty is rated easy, with roughly 5min to a first successful run.

Who is bashumerate for?

Mainly developer.

Open on GitHub → Ask about another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.