NAME
rmdir - delete a directory
SYNOPSIS
#include <unistd.h> int rmdir(const char *pathname);
DESCRIPTION
rmdir() deletes a directory, which must be empty.
RETURN VALUE
On success, zero is returned. On error, -1 is returned, and errno is set appropriately.
ERRORS
EACCES Write access to the directory containing pathname was not allowed, or one of the directories in the path prefix of pathname did not allow search permission. (See also path_resolution(7). EBUSY pathname is currently in use by the system or some process that prevents its removal. On Linux, this means pathname is currently used as a mount point or is the root directory of the calling process. EFAULT pathname points outside your accessible address space. EINVAL pathname has . as last component. ELOOP Too many symbolic links were encountered in resolving pathname. ENAMETOOLONG pathname was too long. ENOENT A directory component in pathname does not exist or is a dangling symbolic link. ENOMEM Insufficient kernel memory was available. ENOTDIR pathname, or a component used as a directory in pathname, is not, in fact, a directory. ENOTEMPTY pathname contains entries other than . and .. ; or, pathname has .. as its final component. POSIX.1 also allows EEXIST for this condition. EPERM The directory containing pathname has the sticky bit (S_ISVTX) set and the process's effective user ID is neither the user ID of the file to be deleted nor that of the directory containing it, and the process is not privileged (Linux: does not have the CAP_FOWNER capability). EPERM The filesystem containing pathname does not support the removal of directories. EROFS pathname refers to a directory on a read-only filesystem.
CONFORMING TO
POSIX.1-2001, POSIX.1-2008, SVr4, 4.3BSD.
BUGS
Infelicities in the protocol underlying NFS can cause the unexpected disappearance of directories which are still being used.
SEE ALSO
rm(1), rmdir(1), chdir(2), chmod(2), mkdir(2), rename(2), unlink(2), unlinkat(2)
COLOPHON
This page is part of release 4.09 of the Linux man-pages project. A description of the project, information about reporting bugs, and the latest version of this page, can be found at https://www.kernel.org/doc/man-pages/.
More Linux Commands
manpages/glMultMatrix.3gl.html
glMultMatrix(3gl) - multiply the current matrix with the spe
glMultMatrix multiplies the current matrix with the one specified using m, and replaces the current matrix with the product. The current matrix is determined by
manpages/XGetICValues.3.html
XGetICValues(3) - set and obtain XIC values - Linux man page
The XSetICValues function returns NULL if no error occurred; otherwise, it returns the name of the first argument that could not be set. An argument might not b
manpages/rpmsign.8.html
rpmsign(8) - RPM Package Signing (Admin - Linux man page)...
Both of the --addsign and --resign options generate and insert new signatures for each package PACKAGE_FILE given, replacing any existing signatures. There are
manpages/Tcl_ReapDetachedProcs.3.html
Tcl_ReapDetachedProcs(3) - manage child processes in backgro
Tcl_DetachPids and Tcl_ReapDetachedProcs provide a mechanism for managing subprocesses that are running in background. These procedures are needed because the p
manpages/uuid_generate_time_safe.3.html
uuid_generate_time_safe(3) - create a new unique UUID value
The uuid_generate function creates a new universally unique identifier (UUID). The uuid will be generated based on high-quality randomness from /dev/urandom, if
manpages/XGetImage.3.html
XGetImage(3) - transfer images (Library - Linux man page)...
The XPutImage function combines an image with a rectangle of the specified drawable. The section of the image defined by the src_x, src_y, width, and height arg
manpages/load.n.html
load(n) - Load machine code and initialize new commands.....
This command loads binary code from a file into the applications address space and calls an initialization procedure in the package to incorporate it into an in
manpages/set_menu_opts.3menu.html
set_menu_opts(3menu) - set and get menu options (Man Page)
The function set_menu_opts sets all the given menus option bits (menu option bits may be logically-ORed together). The function menu_opts_on turns on the given
manpages/Tcl_GetAliasObj.3.html
Tcl_GetAliasObj(3) - manage multiple Tcl interpreters, alias
These procedures are intended for access to the multiple interpreter facility from inside C programs. They enable managing multiple interpreters in a hierarchic
manpages/itclwidget.n.html
itclwidget(n) create a widget class of objects (Man Page)...
One of the fundamental constructs in [incr Tcl] is the widget definition. A widget is like a class with some additional features. Each widget acts as a template
manpages/glLoadMatrixf.3gl.html
glLoadMatrixf(3gl) - replace the current matrix with the spe
glLoadMatrix replaces the current matrix with the one whose elements are specified by m. The current matrix is the projection matrix, modelview matrix, or textu
manpages/Tcl_ParseVarName.3.html
Tcl_ParseVarName(3) - parse Tcl scripts and expressions.....
These procedures parse Tcl commands or portions of Tcl commands such as expressions or references to variables. Each procedure takes a pointer to a script (or p
