---
name: "rmdir"
section: "1"
platform: "macos"
package: "file_cmds"
version: "479"
release: "macOS 26.5"
platforms: ["linux", "freebsd", "openbsd", "macos"]
url: "https://new.carta.tech/rmdir"
---

# rmdir(1)

remove directories

## NAME

**rmdir** – remove directories

## SYNOPSIS

**rmdir** \[**-pv**\] *directory* *...*

## DESCRIPTION

The **rmdir** utility removes the directory entry specified by each *directory* argument, provided it is empty.

Arguments are processed in the order given. In order to remove both a parent directory and a subdirectory of that parent, the subdirectory must be specified first so the parent directory is empty when **rmdir** tries to remove it.

The following option is available:

- **-p**

  Each *directory* argument is treated as a pathname of which all components will be removed, if they are empty, starting with the last most component. (See [rm(1)](/rm/1.md) for fully non-discriminant recursive removal.)

- **-v**

  Be verbose, listing each directory as it is removed.

## EXIT STATUS

The **rmdir** utility exits with one of the following values:

- 0

  Each directory entry specified by a *directory* operand referred to an empty directory and was removed successfully.

- \>0

  An error occurred.

## EXAMPLES

Remove the directory *foobar*, if it is empty:

```
$ rmdir foobar
```

Remove all directories up to and including *cow*, stopping at the first non-empty directory (if any):

```
$ rmdir -p cow/horse/monkey
```

## SEE ALSO

[rm(1)](/rm/1.md)

## STANDARDS

The **rmdir** utility is expected to be IEEE Std 1003.2 (“POSIX.2”) compatible.

## HISTORY

A **rmdir** command appeared in Version 1 AT&T UNIX.
