home | help
RM(1)			     General Commands Manual			   RM(1)

NAME
     rm, unlink -- remove directory entries

SYNOPSIS
     rm [-f | -i] [-dIPRrvW] file ...
     unlink file

DESCRIPTION
     The rm utility attempts to remove the non-directory type files specified on
     the  command  line.   If the permissions of the file do not permit writing,
     and the standard input device is a terminal, the user is prompted	(on  the
     standard error output) for confirmation.

     The options are as follows:

     -d      Attempt to remove directories as well as other types of files.

     -f      Attempt to remove the files without prompting for confirmation, re-
	     gardless of the file's permissions.  If the file does not exist, do
	     not  display  a diagnostic message or modify the exit status to re-
	     flect an error.  The -f option overrides any previous -i options.

     -i      Request confirmation before attempting to remove each file, regard-
	     less of the file's permissions, or whether or not the standard  in-
	     put  device is a terminal.  The -i option overrides any previous -f
	     options.

     -I      Request confirmation once if more than three files  are  being  re-
	     moved  or	if  a directory is being recursively removed.  This is a
	     far less intrusive option than -i	yet  provides  almost  the  same
	     level of protection against mistakes.

     -P      Overwrite	regular files before deleting them.  Files are overwrit-
	     ten three times, first with the byte pattern 0xff, then  0x00,  and
	     then  0xff  again,  before  they  are deleted.  Files with multiple
	     links will not be overwritten nor deleted unless -f is specified, a
	     warning is generated instead.

	     Specifying this flag for a read only file will cause rm to generate
	     an error message and exit.  The file will not be removed  or  over-
	     written.

     -R      Attempt  to remove the file hierarchy rooted in each file argument.
	     The -R option implies the -d option.  If the -i  option  is  speci-
	     fied, the user is prompted for confirmation before each directory's
	     contents  are  processed  (as well as before the attempt is made to
	     remove the directory).  If the user does not respond affirmatively,
	     the file hierarchy rooted in that directory is skipped.

     -r      Equivalent to -R.

     -v      Be verbose when deleting files, showing them as they are removed.

     -W      Attempt to undelete the named files.  Currently,  this  option  can
	     only  be used to recover files covered by whiteouts in a union file
	     system (see undelete(2)).

     The rm utility removes symbolic links, not  the  files  referenced  by  the
     links.

     It is an error to attempt to remove the files /, . or ...

     When  the utility is called as unlink, only one argument, which must not be
     a directory, may be supplied.  No options may be supplied	in  this  simple
     mode  of operation, which performs an unlink(2) operation on the passed ar-
     gument.

EXIT STATUS
     The rm utility exits 0 if all of the named files or file  hierarchies  were
     removed, or if the -f option was specified and all of the existing files or
     file  hierarchies	were removed.  If an error occurs, rm exits with a value
     >0.

NOTES
     The rm command uses getopt(3) to parse its arguments, which  allows  it  to
     accept  the `--' option which will cause it to stop processing flag options
     at that point.  This will allow the removal of file names that begin with a
     dash (`-').  For example:

	   rm -- -filename

     The same behavior can be obtained by using an  absolute  or  relative  path
     reference.  For example:

	   rm /home/user/-filename
	   rm ./-filename

     When  -P is specified with -f the file will be overwritten and removed even
     if it has hard links.

COMPATIBILITY
     The rm utility differs from historical implementations in that the  -f  op-
     tion  only masks attempts to remove non-existent files instead of masking a
     large variety of errors.  The -v option is  non-standard  and  its  use  in
     scripts is not recommended.

     Also,  historical	BSD implementations prompted on the standard output, not
     the standard error output.

SEE ALSO
     chflags(1), rmdir(1), undelete(2), unlink(2), fts(3), getopt(3), symlink(7)

STANDARDS
     The rm command conforms to IEEE Std 1003.2 ("POSIX.2").

     The simplified unlink command conforms to Version	2  of  the  Single  UNIX
     Specification ("SUSv2").

HISTORY
     A rm command appeared in Version 1 AT&T UNIX.

BUGS
     The -P option assumes that the underlying file system is a fixed-block file
     system.   UFS  is a fixed-block file system, LFS is not.  In addition, only
     regular files are overwritten, other types of files are not.

FreeBSD 7.0			December 26, 2006			   RM(1)

home | help