This is the README for pslist version 1.4.0.
1. What it is.
pslist is a simple utility to list the process IDs of a process and all
its children, and its children's children, and so on. If invoked with
a command name which ends in 'kill', it sends a signal to a selected group
of processes. If invoked with a command name which ends in 'nice',
it renices the selected group of processes to a specified value.
No compilation is needed - this is a Perl script :)
Installation is as simple as copying pslist into an appropriate directory,
and possibly making a symlink to it with a name ending in 'kill' or 'renice'
to make use of the recursive kill or renice functionality.
The provided Makefile installs pslist into /usr/local/bin and symlinks it
to /usr/local/bin/rkill and /usr/local/bin/rrenice. All you have to do is
type 'make install'.
If invoked as anything not ending in 'kill', pslist shall display a list
of processes' info. Each process having at least one child is shown on
a single line listing its process ID, its name, and all its children's PIDs.
pslist may be invoked with one or more arguments, which are interpreted
as either PIDs if numeric, or as process names. In this case, pslist
only displays information about the specified processes.
If invoked with a command name ending in 'kill' (like the rkill in
the default install), pslist shall attempt to send a signal to all
the specified processes and all their children. A signal number or name
may be given before the process list on the command line, using the same
format as with kill(1).
4. License (standard two-clause BSD)
Copyright (c) 2000, 2005, 2009 Peter Pentchev
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
5. That's all, folks!
Hope you like it; if you don't, well, it's a free world (mostly).
Peter Pentchev <firstname.lastname@example.org>