[-1c?
@(#)$Id: kill (AT&T Research) 2012-07-05 $
]
[+NAME?kill - terminate or signal process]
[+DESCRIPTION?With the first form in which \b-l\b is not specified, \bkill\b sends a signal to one or more processes specified by \ajob\a.  This normally terminates the processes unless the signal is being caught or ignored.]
[+?Each \ajob\a can be specified as one of the following:]{
[+\anumber\a?\anumber\a refers to a process id.]
[+-\anumber\a?\anumber\a refers to a process group id.]
[+%\anumber\a?\anumber\a refer to a job number.]
[+%\astring\a?Refers to a job whose name begins with \astring\a.]
[+%??\astring\a?Refers to a job whose name contains \astring\a.]
[+%+ \bor\b %%?Refers to the current job.]
[+%-?Refers to the previous job.]
}
[+?If the signal is not specified with either the \b-n\b or the \b-s\b  option, the \bSIGTERM\b signal is used.]
[+?If \b-l\b is specified, and no \aarg\a is specified, then \bkill\b writes the list of signals to standard output.  Otherwise, \aarg\a can be either a signal name, or a number representing either a signal number or exit status for a process that was terminated due to a signal.  If a name is given the corresponding signal number will be written to standard output.  If a number is given the corresponding signal name will be written to standard output.]
[l?List signal names or signal numbers rather than sending signals as described above.  The \b-n\b and \b-s\b options cannot be specified.]
[q]#[n?On systems that support \asigqueue\a(2), send a queued signal with message number than can only be as large as a signed integer.  The \ajob\a must be specified as a positive number. On systems that do not support \asigqueue\a(2), a signal is sent without the message number \an\a and the signal will not be queued.]
[L?Same as \b-l\b except that of no argument is specified the signals will be listed in menu format as with select compound command.]
[n]#[signum?Specify a signal number to send.  Signal numbers are not portable across platforms, except for the following:]{
[+0?No signal]
[+1?\bHUP\b]
[+2?\bINT\b]
[+3?\bQUIT\b]
[+6?\bABRT\b]
[+9?\bKILL\b]
[+14?\bALRM\b]
[+15?\bTERM\b]
}
[s]:[signame?Specify a signal name to send.  The signal names are derived from their names in \b<signal.h>\b without the \bSIG\b prefix and are case insensitive.  \bkill -l\b will generate the list of signals on the current platform.]

job ...
-l [arg ...]

[+EXIT STATUS?]{
[+0?At least one matching process was found for each \ajob\a operand, and the specified signal was successfully sent to at least one matching process.]
[+>0?An error occurred.  A value of \b2\b is returned when \b-q\b is used and it fails with the error EAGAIN.]
}
[+SEE ALSO?\bps\b(1), \bjobs\b(1), \bkill\b(2), \bsignal\b(2), \bsigqueue\b(2)]
