On 05/04/2024 at 16:19, Branden R. Williams via GNU coreutils Bug Reports wrote:
I was integrating the timeout command into a shell script and realized the manpage 
& the --help docs do not accurately describe how the tool works. In addition, 
there appears to be a bug related to arguments passed. I am running version 9.1.

According to the help screen, this command should work:

        timeout -k 10s ping example.com <http://example.com/>

It fails, however, because the next argument after invoking -k is the kill 
signal you want to send. The command (to send a SIGKILL) must be:


As I understand it, the argument after -k (or --kill-after=) is the time to wait and send the kill signal if the timeout fails.
So this line:

        timeout -k 9 10s ping example.com <http://example.com/>


sends a kill signal 9 seconds after the timeout, if the timeout hasn't worked.

The -s option is to change the signal sent (as below).

I believe the kill after functionality and docs should be modified to send a 
default signal of SIGTERM without an additional argument so the first iteration 
above would work. Then you could explain that if you wanted to send a DIFFERENT 
signal, use the -s flag that is there to pass one. But according to the docs, 
the first command SHOULD work. Even using the --kill-after= syntax passes in 
the kill signal into that argument, not the actual time.

Thank you for your consideration and for maintaining such a critical set of 
tools!

Regards,

B




--

Chris Elvidge




Reply via email to