|RENAMEAT(2)||Linux Programmer's Manual||RENAMEAT(2)|
NAMErenameat - rename a file relative to directory file descriptors
int renameat(int olddirfd , const char * oldpath ,
int newdirfd , const char * newpath );
Feature Test Macro Requirements for glibc (see feature_test_macros(7)):
- Since glibc 2.10:
- _XOPEN_SOURCE >= 700 || _POSIX_C_SOURCE >= 200809L
- Before glibc 2.10:
DESCRIPTIONThe renameat() system call operates in exactly the same way as rename(2), except for the differences described in this manual page.
RETURN VALUEOn success, renameat() returns 0. On error, -1 is returned and errno is set to indicate the error.
ERRORSThe same errors that occur for rename(2) can also occur for renameat(). The following additional errors can occur for renameat():
- olddirfd or newdirfd is not a valid file descriptor.
- oldpath is relative and olddirfd is a file descriptor referring to a file other than a directory; or similar for newpath and newdirfd
VERSIONSrenameat() was added to Linux in kernel 2.6.16; library support was added to glibc in version 2.4.
NOTESSee openat(2) for an explanation of the need for renameat().
SEE ALSOopenat(2), rename(2), path_resolution(7)
COLOPHONThis page is part of release 3.53 of the Linux man-pages project. A description of the project, and information about reporting bugs, can be found at http://www.kernel.org/doc/man-pages/.