Provided by: timelimit_1.9.2-2build1_amd64 bug

NAME

       timelimit — effectively limit the absolute execution time of a process

SYNOPSIS

       timelimit [-pq] [-S killsig] [-s warnsig] [-T killtime] [-t warntime] command [arguments ...]
       timelimit --features

DESCRIPTION

       The  timelimit  utility  executes  a given command with the supplied arguments and terminates the spawned
       process after a given time with a given signal.  If the process exits before the time limit has  elapsed,
       timelimit will silently exit, too.

       Options:

       --features
               List the compile-time features supported by this version of timelimit:

               timelimit
                       Always present, with the version of the timelimit tool.

               subsecond
                       Present if timeouts with subsecond precision are supported, with version 1.0.

       -p      If  the  child process is terminated by a signal, timelimit propagates this condition, i.e. sends
               the same signal to itself.  This allows the program executing timelimit to determine whether  the
               child process was terminated by a signal or actually exited with an exit code larger than 128.

       -q      Quiet  operation  - timelimit does not output diagnostic messages about signals sent to the child
               process.

       -S killsig
               Specify the number of the signal to be sent to the process killtime seconds  after  warntime  has
               expired.  Defaults to 9 (SIGKILL).

       -s warnsig
               Specify  the  number  of  the signal to be sent to the process warntime seconds after it has been
               started.  Defaults to 15 (SIGTERM).

       -T killtime
               Specify the maximum execution time of the process before sending killsig after warnsig  has  been
               sent.  Defaults to 120 seconds.

       -t warntime
               Specify the maximum execution time of the process in seconds before sending warnsig.  Defaults to
               3600 seconds.

       On  systems  that support the setitimer(2) system call, the warntime and killtime values may be specified
       in fractional seconds with microsecond precision.

ENVIRONMENT

       KILLSIG
               The killsig to use if the -S option was not specified.

       KILLTIME
               The killtime to use if the -T option was not specified.

       WARNSIG
               The warnsig to use if the -s option was not specified.

       WARNTIME
               The warntime to use if the -t option was not specified.

EXIT STATUS

       If the child process exits normally, the timelimit utility will pass its exit code on up.  If  the  child
       process  is terminated by a signal and the -p flag was not specified, the timelimit utility's exit status
       is 128 plus the signal number, similar to sh(1).  If the -p flag was  specified,  the  timelimit  utility
       will  raise  the  signal itself so that its own parent process may in turn reliably distinguish between a
       signal and a larger than 128 exit code.

       In rare cases, the timelimit utility may encounter a system or user error; then, its exit status  is  one
       of the standard sysexits(3) values:

       EX_USAGE
               The command-line parameters and options were incorrectly specified.

       EX_SOFTWARE
               The timelimit utility itself received an unexpected signal while waiting for the child process to
               terminate.

       EX_OSERR
               The  timelimit  utility  was  unable  to  execute the child process, wait for it to terminate, or
               examine its exit status.

EXAMPLES

       The following examples are shown as given to the shell:

             timelimit -p /usr/local/bin/rsync rsync://some.host/dir /opt/mirror

       Run the rsync program to mirror a WWW or FTP site and kill it if it runs longer than 1 hour (that is 3600
       seconds) with SIGTERM.  If the rsync process does not exit after receiving the SIGTERM, timelimit  issues
       a  SIGKILL 120 seconds after the SIGTERM.  If the rsync process is terminated by a signal, timelimit will
       itself raise this signal.

             tcpserver 0 8888 timelimit -t600 -T300 /opt/services/chat/stats

       Start a tcpserver(n) process listening on tcp port 8888; each client connection shall invoke an  instance
       of  an  IRC  statistics tool under /opt/services/chat and kill it after 600 seconds have elapsed.  If the
       stats process is still running after the SIGTERM, it will be killed by a SIGKILL sent 300 seconds later.

             env WARNTIME=4.99 WARNSIG=1 KILLTIME=1.000001 timelimit sh stats.sh

       Start a shell script and kill it with a SIGHUP in a little under 5 seconds.  If the shell gets stuck  and
       does not respond to the SIGHUP, kill it with the default SIGKILL just a bit over a second afterwards.

SEE ALSO

       kill(1), rsync(1), signal(3), tcpserver(n)

STANDARDS

       No standards documentation was harmed in the process of creating timelimit.

BUGS

       Please report any bugs in timelimit to the author.

AUTHOR

       The  timelimit  utility was conceived and written by Peter Pentchev <roam@ringlet.net> with contributions
       and suggestions by Karsten W Rohrbach <karsten@rohrbach.de>, Teddy  Hogeborn  <teddy@fukt.bsnet.se>,  and
       Tomasz Nowak <nowak2000@poczta.onet.pl>.

Debian                                           April 14, 2018                                     TIMELIMIT(1)