X-Git-Url: https://git.distorted.org.uk/~mdw/misc/blobdiff_plain/c5ed60bed17363e55508026876f8fc59a67d8c9c:/timeout.1..58b430827fb4ed30ff46e252664dfcf1b15dd869:/mtimeout.1 diff --git a/timeout.1 b/mtimeout.1 similarity index 92% rename from timeout.1 rename to mtimeout.1 index 9d2c815..c696f93 100644 --- a/timeout.1 +++ b/mtimeout.1 @@ -1,9 +1,9 @@ -.TH "timeout" 1 "5 June 2011" "Mark Wooding" "Toys" +.TH "mtimeout" 1 "5 June 2011" "Mark Wooding" "Toys" .SH NAME -timeout \- run a program for at most a given amount of time +mtimeout \- run a program for at most a given amount of time . .SH SYNOPSIS -.B timeout +.B mtimeout .RB [ \-s .IR signal ] .I seconds @@ -12,19 +12,19 @@ timeout \- run a program for at most a given amount of time . .SH DESCRIPTION The -.B timeout +.B mtimeout command runs a specified program for at most a given number of .IR seconds . .PP It works by running the given command as a separate process group. It then waits either for the top-level process (only) to exit, or for the timeout to expire, whichever happens first. If the process exits, then -.B timeout +.B mtimeout exits too, setting its exit status to match. Any other processes which may have been started are left unmolested. .PP On the other hand, if the timeout goes off, then -.B timeout +.B mtimeout sends its child process group the specified signal, by default .BR SIGTERM , though you can choose a different one with the @@ -34,7 +34,7 @@ hasn't exited, it sends .B SIGKILL to the process group and waits a further five seconds. If the child still hasn't exited in this time, then -.B timeout +.B mtimeout gives up and exits. .PP The following command-line options are recognized. @@ -61,29 +61,29 @@ or by name (e.g., .BR KILL ). .PP The -.B timeout +.B mtimeout program sets its exit status as follows. .TP 0\(em127 The child process ran to completion within the given time: -.BR timeout 's +.BR mtimeout 's exit status is the same as that of the child process. .TP 128 The child process exited in a way which -.B timeout +.B mtimeout could not interpret. .TP 129\(em250 The child process was killed by a signal: the exit status is 128 higher than the signal number. If -.B timeout +.B mtimeout had to kill the child because it took too long, then its exit status will be like this. .TP 251 The child took too long and couldn't be killed: -.B timeout +.B mtimeout gave up waiting. .TP 252 @@ -92,13 +92,13 @@ standard error. .TP 253 The -.B timeout +.B mtimeout program couldn't parse the arguments provided to it: an error message was written to standard error. .TP 254 A system call made by -.B timeout +.B mtimeout failed unexpectedly: an error message was written to standard error. .TP 255 @@ -106,7 +106,7 @@ Not used. . .SH BUGS Because -.B timeout +.B mtimeout works by running its child process in a separate process group, it interacts oddly with interactive shells. If the child process group attempts to do terminal I/O (particularly reading from a terminal) then @@ -114,7 +114,7 @@ it may be sent signals to suspend it. This may or may not make matters worse. .PP The -.B timeout +.B mtimeout program makes an effort to propagate interesting signals to its child process group. Currently, it propagates .BR SIGTSTP , @@ -128,7 +128,7 @@ of the current signals from it, but I might add some; or I might add an option to control this list. .PP If you suspend -.B timeout +.B mtimeout and its child process group, the timer continues running anyway. (I'm not quite sure whether this is the right behaviour.) .PP @@ -136,7 +136,7 @@ Nested timeouts don't work in a useful way if the outer timeout expires earlier than the inner one. Since .B SIGTERM isn't propagated (currently, at least), the inner -.B timeout +.B mtimeout is killed by the outer one, and loses control of its child process group. You could possibly work around this by sending .B SIGQUIT