OnWorks favicon

keep-one-running - Online in the Cloud

Run keep-one-running in OnWorks free hosting provider over Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator

This is the command keep-one-running that can be run in the OnWorks free hosting provider using one of our multiple free online workstations such as Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator



run-one - run just one instance at a time of some command and unique set of arguments
(useful for cronjobs, eg)


run-one COMMAND [ARGS]

run-this-one COMMAND [ARGS]

run-one-constantly COMMAND [ARGS]

keep-one-running COMMAND [ARGS]

run-one-until-success COMMAND [ARGS]

run-one-until-failure COMMAND [ARGS]


run-one is a wrapper script that runs no more than one unique instance of some command
with a unique set of arguments.

This is often useful with cronjobs, when you want no more than one copy running at a time.

run-this-one is exactly like run-one, except that it will use pgrep(1) and kill(1) to find
and kill any running processes owned by the user and matching the target commands and
arguments. Note that run-this-one will block while trying to kill matching processes,
until all matching processes are dead.

run-one-constantly operates exactly like run-one except that it respawns "COMMAND [ARGS]"
any time COMMAND exits (zero or non-zero).

keep-one-running is an alias for run-one-constantly.

run-one-until-success operates exactly like run-one-constantly except that it respawns
"COMMAND [ARGS]" until COMMAND exits successfully (ie, exits zero).

run-one-until-failure operates exactly like run-one-constantly except that it respawns
"COMMAND [ARGS]" until COMMAND exits with failure (ie, exits non-zero).


In one shell:

$ run-one rsync -azP $HOME $[email protected]:/srv/backup
40298 100% 37.13MB/s 0:00:00 (xfer#1, to-check=3509/3516)
20352 100% 98.39kB/s 0:00:00 (xfer#3, to-check=3478/3516)
sent 746228 bytes received 413059 bytes 36802.76 bytes/sec
total size is 3732890955 speedup is 3219.99

In another shell, while the first is still running:

$ run-one rsync -azP $HOME $[email protected]:/srv/backup
$ echo $?

Another example... In one shell:

$ run-one top

In another shell:

$ run-one top
$ echo $?
$ run-this-one top
top - 17:15:36 up 1:43, 3 users, load average: 1.05, 1.04, 1.00
Tasks: 170 total, 1 running, 169 sleeping, 0 stopped, 0 zombie

And note that the process in the first shell was killed.

You might want to keep one ssh connection up and running all the time, with:

$ run-one-constantly ssh -N -C -L 3128:localhost:3128 -L 7778:localhost:7778 example.com

Use keep-one-running online using onworks.net services

Free Servers & Workstations

Download Windows & Linux apps

  • 1
    Extreme Cluster Administration Toolkit.
    xCAT is a scalable cluster management
    and provisioning tool that provides
    hardware control, discovery, and OS
    Download xCAT
  • 2
    Psi is cross-platform powerful XMPP
    client designed for experienced users.
    There are builds available for MS
    Windows, GNU/Linux and macOS.. Audience:
    End Users...
    Download Psi
  • 3
    Blobby Volley 2
    Blobby Volley 2
    Official continuation of the famous
    Blobby Volley 1.x arcade game..
    Audience: End Users/Desktop. User
    interface: OpenGL, SDL. Programming
    Language: C++, Lua. C...
    Download Blobby Volley 2
  • 4
    SuiteCRM is the award-winning Customer
    Relationship Management (CRM)
    application brought to you by authors
    and maintainers, SalesAgility. It is the
    world�s mos...
    Download SuiteCRM
  • 5
    Poweradmin is a web-based DNS
    administration tool for PowerDNS server.
    The interface has full support for most
    of the features of PowerDNS. It has full
    Download Poweradmin
  • 6
    Gin Web Framework
    Gin Web Framework
    Gin is an incredibly fast web framework
    written in Golang that can perform up to
    40 times faster, thanks to its
    martini-like API and custom version of
    Download Gin Web Framework
  • More »

Linux commands