Kill or modify a process by name (QNX Neutrino)
slay [options]... process_name...
- - signal_number
- A signal number specifying which signal to raise on the processes matching
- Force the action to be taken on all processes sharing the same
process_name. Normally, slay prompts
for confirmation when more than one process bears the specified name.
- Set a SIGSTOP signal on a process, effectively holding its
- -n nodename
- Search for the specified processes on the specified remote node
- -P prio[f|r|o]
- Set the processes matching process_name to priority
prio. Non-root users are limited to a
maximum priority of 63; root can specify a priority up to 255.
You can change the range of privileged priorities with the
-P option for
The priority may be followed by f,
r or o to change the scheduling policy to
SCHED_FIFO, SCHED_RR or
|| SCHED_OTHER is currently the same as SCHED_RR.
- Print the process IDs, in decimal, to standard output, with one process ID
The processes aren't slain.
- Query before dealing with the process, even if only one process is found
with a matching name (overrides option -f). This option
is useful for viewing the other process information that
- Be quiet.
This option is useful when you invoke slay from a C program.
- Don't kill processes that have child processes.
You typically use this option in a shell command that shuts down shells on
other devices. Setting this option prevents slay
from killing shells that have other processes (such as editors)
If you also specify -q, slay
prompts for a forced kill even if the named process has child processes.
- -s sig
- Define a signal to send. This option causes the signal
sig to be raised for the processes matching the
- -t ttyname
- Match only those processes whose name is
process_name and have ttyname
as the controlling terminal. If ttyname doesn't
begin with a slash (/), slay assumes that it
starts with the /dev/ prefix.
- Set a SIGCONT signal on a process. If execution of the process
was being held by a SIGSTOP signal, execution begins
it left off. If the process hadn't previously had a
upon it, the SIGCONT signal has no effect.
- Be verbose; display messages about processes being signaled.
- The name of a process to operate on.
Use the slay utility to kill a process by name rather
than by process ID. This saves you from having to first run the
utility to obtain a pid before issuing a
kill command. Process names
are specified without the path. For example, let's say you have a
process called /bin/sleep that you want to kill. Entering
sleep as the process name
is sufficient to allow slay to find and kill it.
There are many forms of this command. The simplest and most often
used form is:
This command locates the process bearing the specified name. If only
one is found, a SIGTERM signal is set on it. If more than one
process bears the specified name, you're prompted for a yes/no response
for each process. When each process is listed in this form, the process
name, pid, and tty group/member numbers are also
displayed to help you make a selection.
||To set a signal on a process you must either own the process
or be logged in as root.|
Kill the spooler process on node peterv:
slay -n peterv spooler
As root, change priority of the my_test process to 20:
slay -P 20 my_test
- No processes matched the supplied criteria, an error occurred,
or the number of processes matched and acted upon was an even
multiple of 256.
- The number of processes matched and acted upon modulo
256 (e.g. a status of 1 could mean 1 process, 257
processes, 513 processes etc.)
- If the exit status was gleaned through direct spawning,
this is the number of processes matched and acted upon
If slay was run through the shell, this is
either the number of processes matched and acted upon,
or it indicates why slay died due to
a signal (subtract 128 from the exit status to determine
the signal number).
- The number of processes matched and acted upon, modulo
The exit status of slay is nonstandard for historical
reasons. It is strongly recommended that slay not be used in any
situation where the exit status is relied upon because the status
is ambiguous in some circumstances.