Skip to content
/ para Public

Simple, lightweight, and portable tool to run jobs in parallel

License

Notifications You must be signed in to change notification settings

odkr/para

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

33 Commits
 
 
 
 
 
 

Repository files navigation

OpenSSF best practices badge

Para

Para is a command-line utility that runs jobs in parallel.

It is simpler, lighter, and more portable than Concurrently, GNU Parallel, and rust-parallel.

It consists of a single source file, is written in C99, and only uses the Unix standard library. So it should work on almost every Unix-like system and be easy to integrate into C-based projects.

It's fast, too.

Important

The GitHub repository only hosts discussions and the issue tracker.

Examples

Run echo foo and echo bar in parallel:

$ para 'echo foo' 'echo bar'
bar
foo

Compose commands from arguments:

$ para -c 'echo {}' foo bar baz
foo
bar
baz

Add FOO=bar to the job environment:

$ para FOO=bar 'sh -c "echo $FOO"'
bar

Requirements

Para should work on almost every Unix-like system. More precisely, it should work on every system that complies with POSIX.1-2008, including the X/Open System Interface and Spawn extensions. It has been tested on Alpine Linux, Debian, Darwin, FreeBSD, NetBSD, and OpenBSD.

Compiling Para requires:

  • A C compiler that supports C99 (e.g., GCC ≥ v4.3, Clang ≥ v1.0, or TinyCC ≥ v0.9)
  • An assembler and a linker (e.g., from GNU Binutils or a BSD system)
  • Make (GNU Make and BSD makes are known to work)
  • The header files of your system's standard library

Para comes with a script that installs these dependencies if needed.

Installation

See https://odkr.codeberg.page/para/install

Documentation

See the home page, the manual, and para -h.

Contact

Home page: https://odkr.codeberg.page/para

Issue tracker: https://github.com/odkr/para/issues

Source code (primary): https://codeberg.org/odkr/para

Source code (mirror): https://repo.or.cz/para.git

License

Copyright 2023 and 2024 Odin Kroeger

Para is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the FreeSoftware Foundation, either version 3 of the License, or (at your option) any later version.

Para is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with Para. If not, see https://www.gnu.org/licenses/.