Jump to content United States-English
HP.com Home Products and Services Support and Drivers Solutions How to Buy
» Contact HP
More options
HP.com home
HP-UX Reference > R


HP-UX 11i Version 3: February 2007

Technical documentation

» Feedback
Content starts here

 » Table of Contents

 » Index


rm — remove files or directories


rm [-f|-i] [-Rr] file...


The rm command removes the entries for one or more files from a directory. If an entry was the last link to the file, the file is destroyed. Removal of a file requires write and search (execute) permission in its directory, but no permissions on the file itself. However, if the sticky bit is set on the directory containing the file, only the owner of the file, the owner of the directory, or a user having appropriate privileges can remove the file.

If a user does not have write permission for a file to be removed and standard input is a terminal, a prompt containing the file name and its permissions is printed requesting that the removal of the file be confirmed (see Access Control Lists below). A line is then read from standard input. If that line begins with y the file is deleted; otherwise, the file remains. No questions are asked when the -f option is given or if standard input is not a terminal.

If file is of type directory, and the -f option is not specified, and either the permissions of file do not permit writing and standard input is a terminal or the -i option is specified, rm writes a prompt to standard error and reads a line from standard input. If the response does not begin with y, it does nothing more with the current file and goes on to any remaining files.

If file is a symbolic link, then only the symbolic link is removed. The file or directory pointed to by the symbolic link is not affected. If any of the intermediate path components of file happens to be a symbolic link, then rm follows the symbolic link and removes the file.


rm recognizes the following options:


Force each file or directory to be removed without prompting for confirmation, regardless of the permissions of the entry. This option also suppresses diagnostic messages regarding nonexistent operands.

This option does not suppress any diagnostic messages other than those regarding nonexistent operands. To suppress all error message and interactive prompts, the -f option should be used while redirecting standard error output to /dev/null.

This option ignores any previous occurrence of the -i option.


Write a prompt to standard error requesting confirmation before removing each entry.

This option ignores any previous occurrence of the -f option.


For each argument that is a directory, this option causes rm to recursively delete the entire contents of that directory before removing the directory itself. When used in conjunction with the -i option, rm asks whether to examine each directory before interactively removing files in that directory and again afterward to confirm removing the directory itself.

The -R option will descend to arbitrary depths in a file hierarchy and will not fail due to path length limitations unless the length of file name, file specified by the user exceeds system limitations.


Equivalent to -R.

Access Control Lists

If a file has optional ACL entries, rm displays a plus sign (+) after the file's permissions. The permissions shown summarize the file's st_mode value returned by stat() (see stat(2)). See also acl(5).


Environment Variables

LANG provides a default value for the internationalization variables that are unset or null. If LANG is unset or null, the default value of "C" (see lang(5)) is used. If any of the internationalization variables contains an invalid setting, rm will behave as if all internationalization variables are set to "C". See environ(5).

LC_ALL If set to a non-empty string value, overrides the values of all the other internationalization variables.

LC_CTYPE determines the interpretation of file names as single and/or multi-byte characters, the classification of characters as printable, and the characters matched by character class expressions in regular expressions.

LC_MESSAGES determines the locale that should be used to affect the format and contents of diagnostic messages written to standard error and informative messages written to standard output.

NLSPATH determines the location of message catalogues for the processing of LC_MESSAGES.

International Code Set Support

Single- and multibyte character code sets are supported.


Generally self-explanatory. Note that the -f option does not suppress all diagnostic messages.

It is forbidden to remove the file .., in order to avoid the consequences of using a command such as:

rm -r .*

If a designated file is a directory, an error comment is printed unless the -R or -r option is used.


rm exits with one of the following values:


If the -f option is not specified, 0 is returned only if all the named directory entries (the arguments specified in the rm command) are removed.

If the -f option is specified, then all the existing named directory entries are removed. If any of the named directory entries are non-existent, rm still returns a zero.


An error occurred.


Remove files with a prompt for verification:

rm -i file1 file2

Remove all the files in a directory:

rm -i mydirectory/*

Note that the previous command removes files only, and does not remove any directories in mydirectory.

Remove a file in the current directory whose name starts with - or * or some other character that is special to the shell:

rm ./-filename rm \*filename etc.

Remove a file in the current directory whose name starts with some strange (usually nonprinting, invisible) character or perhaps has spaces at the beginning or end of the filename, prompting for confirmation:

rm -i *filename*

If *filename* is not unique in the directory, enter n when each of the other files is prompted.

A powerful and dangerous command to remove a directory is:

rm -fR directoryname


rm -Rf directoryname

which removes all files and directories from directoryname without any prompting for verification to remove the files or the directories. This command should only be used when you are absolutely certain that all the files and directories in directoryname as well as directoryname itself are to be removed.



rm does not display a plus sign (+) to indicate the existence of optional access control list entries when asking for confirmation before removing a networked file.



Printable version
Privacy statement Using this site means you accept its terms Feedback to webmaster
© 1983-2007 Hewlett-Packard Development Company, L.P.