NAME
rmall -- remove everything in a directory

SYNOPSIS
rmall - <directory name>

DESCRIPTION
This program will recursively remove all files and subdirectories of a given
starting directory.  The original (starting) directory is not removed
if the "-" flag is present, otherwise it is removed, but
all files in it and any of its subdirectories are.  Only directories where
The user has write permission can be touched.  "rmdir" is used to remove the
directories after they are emptied.  If it fails, an error message is printed.

"rmall" differs from "rm -r *" in that it does not use "glob" to get a list
of the file- and/or directory-names.  Instead, it reads the directory itself.
Thus, it can handle directories that are much larger.  In addition, "rm -r"
does not remove subdirectories, while "rmall" removes everything.

DIAGNOSTICS
"Can't get status of xxxxxxxx" -- unable to perform a "stat" on a file.
"Can't open directory xxxxxxxx" -- unable to open a subdirectory
"Couldn't fork to "rmdir"" -- Unable to fork off a job to perform a "rmdir"
"Couldn't exec "rmdir"" -- Unable to run "rmdir"
"Can't unlink xxxxxxxx" -- Unable to remove file xxxxxxxx

SOURCE LANGUAGE
C

LOCATION
/etc/rmall

SEE ALSO
rm (I), rmdir (I)

BUGS
At times, for no apparent reason, "rmdir" will be unable to remove an empty
directory, claiming that it is not empty.  Running "rmall" again or using
"rmdir" manually will eliminate this.

"rmall" uses a separate file descriptor for each level of directories, thus
it cannot remove entries beyond about the 13th level of nesting, starting
with the directory where "rmall" began.  This should be changed so that it
will "fork" off a copy of "rmall" to handle this and will continue when the
copy "dies".

AUTHOR
John D. Bruner (Purdue University)

