Your company here — click to reach over 10,000 unique daily visitors

rm - Man Page

remove files or directories

Examples (TL;DR)


rm [OPTION]... [FILE]...


This manual page documents the GNU version of rm. rm removes each specified file.  By default, it does not remove directories.

If the -I or --interactive=once option is given, and there are more than three files or the -r, -R, or --recursive are given, then rm prompts the user for whether to proceed with the entire operation.  If the response is not affirmative, the entire command is aborted.

Otherwise, if a file is unwritable, standard input is a terminal, and the -f or --force option is not given, or the -i or --interactive=always option is given, rm prompts the user for whether to remove the file.  If the response is not affirmative, the file is skipped.


Remove (unlink) the FILE(s).

-f,  --force

ignore nonexistent files and arguments, never prompt


prompt before every removal


prompt once before removing more than three files, or when removing recursively; less intrusive than -i, while still giving protection against most mistakes


prompt according to WHEN: never, once (-I), or always (-i); without WHEN, prompt always


when removing a hierarchy recursively, skip any directory that is on a file system different from that of the corresponding command line argument


do not treat '/' specially


do not remove '/' (default); with 'all', reject any command line argument on a separate device from its parent

-r,  -R,  --recursive

remove directories and their contents recursively

-d,  --dir

remove empty directories

-v,  --verbose

explain what is being done


display this help and exit


output version information and exit

By default, rm does not remove directories.  Use the --recursive (-r or -R) option to remove each listed directory, too, along with all of its contents.

Any attempt to remove a file whose last file name component is '.' or '..' is rejected with a diagnostic.

To remove a file whose name starts with a '-', for example '-foo', use one of these commands:

rm -- -foo

rm ./-foo

If you use rm to remove a file, it might be possible to recover some of its contents, given sufficient expertise and/or time.  For greater assurance that the contents are unrecoverable, consider using shred(1).


Written by Paul Rubin, David MacKenzie, Richard M. Stallman, and Jim Meyering.

Reporting Bugs

GNU coreutils online help: <https://www.gnu.org/software/coreutils/>
Report any translation bugs to <https://translationproject.org/team/>

See Also

unlink(1), unlink(2), chattr(1), shred(1)

Full documentation <https://www.gnu.org/software/coreutils/rm>
or available locally via: info '(coreutils) rm invocation'

Referenced By

ch-run(1), clifm(1), debugfs(8), gio(1), lockfile(1), lsof(1), mk-configure(7), mksh(1), mq_overview(7), ocfs2(7), oksh(1), ptrash(1), rcm(7), remove(3), rmdir(2), rmlint(1), samefile(1), srm(1), symlink(7), tmpwatch(8), unlink(2).

July 2024 GNU coreutils 9.5