Documentation
prun-0.0.7 has been yanked.

🍺 Run —

Run is a command-line tool that executes commands in multiple directories simultaneously. It leverages parallel processing and concurrent I/O to efficiently run tasks across directories.

Benchmark

Installation

cargo install prun

Usage

Run .git git fetch upstream

This command will fetch from upstream for all .git repositories inside the current directory. It essentially replaces the following command:

find -iname .git -type d -execdir git fetch upstream \;

Options

--File or -F:

Limit execution to files matching a certain pattern:

Run -F astro.config.ts npx astro add @playform/compress

--Root or -R:

Set the current working directory to a different folder (default is .):

Run -R D:\Developer .git git fetch upstream

--Parallel or -P:

Run commands in parallel (default is sequential):

Run -P -R D:\Developer .git git fetch upstream

--Exclude:

Exclude certain files or directories

--Pattern:

Specify a custom pattern for matching

--Separator:

Define a custom separator

Dependencies

Run relies on several Rust crates to provide its functionality:

  • clap - Parses command-line arguments
  • rayon - Enables parallel processing
  • tokio - Provides an asynchronous runtime
  • walkdir - Facilitates efficient filesystem traversal

Changelog

See CHANGELOG.md for a history of changes to this CLI.