LinuxCommandLibrary
GitHubF-DroidGoogle Play Store

pueue

Command-line task queue manager

TLDR

Add a command to the queue
$ pueue add -- [command]
copy
Add a task to a specific group
$ pueue add -g [group_name] -- [command]
copy
List all tasks and their status
$ pueue status
copy
Start processing the queue or resume a specific task
$ pueue start [task_id]
copy
Pause the queue or a specific task
$ pueue pause [task_id]
copy
Follow task output in real time
$ pueue follow [task_id]
copy
Show the output log of a task
$ pueue log [task_id]
copy
Remove a finished task from the list
$ pueue remove [task_id]
copy
Kill a running task
$ pueue kill [task_id]
copy
Restart a failed or finished task
$ pueue restart [task_id]
copy

SYNOPSIS

pueue command [options]

DESCRIPTION

pueue is a command-line task queue manager that schedules and runs shell commands sequentially or in parallel in the background. Tasks are added to a queue and executed by the pueued daemon, which persists across terminal sessions and system reboots.The tool provides task lifecycle management including pausing, resuming, killing, and restarting tasks. Task output is captured and can be followed in real time with follow or reviewed later with log. Groups allow organizing tasks into separate queues with independent parallelism settings.

PARAMETERS

add [options] -- CMD

Add a task to the queue. Use -g group to assign to a group, -d to start in paused state, -a ID to add a dependency on another task, -l label to assign a label.
status [-j]
Show queue status. Use -j for JSON output.
start [ID]
Resume a specific paused task, or start the entire default group if no ID given.
pause [ID]
Pause a specific task, or the entire default group if no ID given.
remove ID
Remove a task from the list (only finished or queued tasks).
follow ID
Stream task output in real time.
log [ID]
Show captured output of finished tasks.
kill [ID]
Kill a running task or all tasks in a group.
restart ID
Restart a finished or failed task.
clean
Remove all finished tasks from the list.
reset
Kill all tasks and remove everything.
group [add|remove] name
Manage task groups. Groups allow independent parallel queues.
parallel N [-g group]
Set the number of tasks that run in parallel (default: 1).

CONFIGURATION

~/.config/pueue/pueue.yml

Client and daemon configuration file defining default parallelism, callback commands, and daemon socket path.

CAVEATS

Requires the pueued daemon to be running. Start it with pueued -d (daemonized). Task state persists across terminal sessions and daemon restarts.

HISTORY

Pueue (German for "queue") was created by Arne Beer for managing long-running shell commands in the background. Written in Rust.

SEE ALSO

nohup(1), screen(1), tmux(1), at(1), batch(1), task(1)

Copied to clipboard
Kai