KILL(1)

NAME
 - Send signals to processes

SYNOPSIS
kill [-f] [-signal] [-s signal] pid1 [pid2 ...]
kill -l [signal]

OPTIONS

-f, --force
    force, using win32 interface if necessary

-l, --list
    print a list of signal names

-s, --signal
    send signal (use kill --list for a list)

-h, --help
    output usage information and exit

-v, --version
    output version information and exit

DESCRIPTION
The kill program allows you to send arbitrary signals to other Cygwin programs. The usual purpose is to end a running program from some other window when ^C won't work, but you can also send program-specified signals such as SIGUSR1 to trigger actions within the program, like enabling debugging or re-opening log files. Each program defines the signals they understand.

You may need to specify the full path to use kill from within some shells, including bash, the default Cygwin shell. This is because bash defines a kill builtin function; see the bash man page under BUILTIN COMMANDS for more information. To make sure you are using the Cygwin version, try

$ /bin/kill --version

which should give the Cygwin kill version number and copyright information.

Unless you specific the -f option, the "pid" values used by kill are the Cygwin pids, not the Windows pids. To get a list of running programs and their Cygwin pids, use the Cygwin ps program. ps -W will display all windows pids.

The kill -l option prints the name of the given signal, or a list of all signal names if no signal is given.

To send a specific signal, use the -signN option, either with a signal number or a signal name (minus the "SIG" part), as shown in these examples:

$ kill 123
$ kill -1 123
$ kill -HUP 123
$ kill -f 123

Here is a list of available signals, their numbers, and some commentary on them, from the file <sys/signal.h>, which should be considered the official source of this information.

SIGHUP 1 hangup
SIGINT 2 interrupt
SIGQUIT 3 quit
SIGILL 4 illegal instruction (not reset when caught)
SIGTRAP 5 trace trap (not reset when caught)
SIGABRT 6 used by abort
SIGEMT 7 EMT instruction
SIGFPE 8 floating point exception
SIGKILL 9 kill (cannot be caught or ignored)
SIGBUS 10 bus error
SIGSEGV 11 segmentation violation
SIGSYS 12 bad argument to system call
SIGPIPE 13 write on a pipe with no one to read it
SIGALRM 14 alarm clock
SIGTERM 15 software termination signal from kill
SIGURG 16 urgent condition on IO channel
SIGSTOP 17 sendable stop signal not from tty
SIGTSTP 18 stop signal from tty
SIGCONT 19 continue a stopped process
SIGCHLD 20 to parent on child stop or exit
SIGCLD 20 System V name for SIGCHLD
SIGTTIN 21 to readers pgrp upon background tty read
SIGTTOU 22 like TTIN for output if (tp->t_local&LTOSTOP)
SIGIO 23 input/output possible
SIGPOLL 23 System V name for SIGIO
SIGXCPU 24 exceeded CPU time limit
SIGXFSZ 25 exceeded file size limit
SIGVTALRM 26 virtual time alarm
SIGPROF 27 profiling time alarm
SIGWINCH 28 window changed
SIGLOST 29 resource lost (eg, record-lock lost)
SIGPWR 29 power failure
SIGUSR1 30 user defined signal 1
SIGUSR2 31 user defined signal 2

COPYRIGHT
Cygwin is Copyright (C) 1995-2010 Red Hat, Inc.

Cygwin is Free software; for complete licensing information, refer to: http://cygwin.com/licensing.html

SEE ALSO
The full documentation to the Cygwin API is maintained on the web at: http://cygwin.com/cygwin-api/cygwin-api.html The website is updated more frequently than the man pages and should be considered the authoritative source of information.