136 lines
		
	
	
		
			3.1 KiB
		
	
	
	
		
			Groff
		
	
	
	
	
	
			
		
		
	
	
			136 lines
		
	
	
		
			3.1 KiB
		
	
	
	
		
			Groff
		
	
	
	
	
	
| .\" Copyright (c) 1983 Regents of the University of California.
 | |
| .\" All rights reserved.  The Berkeley software License Agreement
 | |
| .\" specifies the terms and conditions for redistribution.
 | |
| .\"
 | |
| .\"	@(#)rename.2	6.4 (Berkeley) 5/22/86
 | |
| .\"
 | |
| .TH RENAME 2 "May 22, 1986"
 | |
| .UC 5
 | |
| .SH NAME
 | |
| rename \- change the name of a file
 | |
| .SH SYNOPSIS
 | |
| .ft B
 | |
| .nf
 | |
| #include <stdio.h>
 | |
| 
 | |
| int rename(const char *\fIfrom\fP, const char *\fIto\fP)
 | |
| .fi
 | |
| .ft R
 | |
| .SH DESCRIPTION
 | |
| .B Rename
 | |
| causes the link named
 | |
| .I from
 | |
| to be renamed as
 | |
| .IR to .
 | |
| If 
 | |
| .I to
 | |
| exists, then it is first removed.
 | |
| Both 
 | |
| .I from
 | |
| and
 | |
| .I to
 | |
| must be of the same type (that is, both directories or both
 | |
| non-directories), and must reside on the same file system.
 | |
| .PP
 | |
| .B Rename
 | |
| guarantees that an instance of
 | |
| .I to
 | |
| will always exist, even if the system should crash in
 | |
| the middle of the operation.
 | |
| .PP
 | |
| If the final component of
 | |
| .I from
 | |
| is a symbolic link,
 | |
| the symbolic link is renamed,
 | |
| not the file or directory to which it points.
 | |
| .SH "RETURN VALUE"
 | |
| A 0 value is returned if the operation succeeds, otherwise
 | |
| .B rename
 | |
| returns \-1 and the global variable 
 | |
| .B errno
 | |
| indicates the reason for the failure.
 | |
| .SH "ERRORS
 | |
| .B Rename
 | |
| will fail and neither of the argument files will be
 | |
| affected if any of the following are true:
 | |
| .TP 15
 | |
| [ENAMETOOLONG]
 | |
| A path name exceeds PATH_MAX characters.
 | |
| .TP 15
 | |
| [ENOENT]
 | |
| A component of the \fIfrom\fP path does not exist,
 | |
| or a path prefix of \fIto\fP does not exist.
 | |
| .TP 15
 | |
| [EACCES]
 | |
| A component of either path prefix denies search permission.
 | |
| .TP 15
 | |
| [EACCES]
 | |
| The requested link requires writing in a directory with a mode
 | |
| that denies write permission.
 | |
| .TP 15
 | |
| [EPERM]
 | |
| The directory containing \fIfrom\fP is marked sticky,
 | |
| and neither the containing directory nor \fIfrom\fP
 | |
| are owned by the effective user ID.
 | |
| .TP 15
 | |
| [EPERM]
 | |
| The \fIto\fP file exists,
 | |
| the directory containing \fIto\fP is marked sticky,
 | |
| and neither the containing directory nor \fIto\fP
 | |
| are owned by the effective user ID.
 | |
| .TP 15
 | |
| [ELOOP]
 | |
| Too many symbolic links were encountered in translating either pathname.
 | |
| (Minix-vmd)
 | |
| .TP 15
 | |
| [ENOTDIR]
 | |
| A component of either path prefix is not a directory.
 | |
| .TP 15
 | |
| [ENOTDIR]
 | |
| .I From
 | |
| is a directory, but \fIto\fP is not a directory.
 | |
| .TP 15
 | |
| [EISDIR]
 | |
| .I To
 | |
| is a directory, but \fIfrom\fP is not a directory.
 | |
| .TP 15
 | |
| [EXDEV]
 | |
| The link named by \fIto\fP and the file named by \fIfrom\fP
 | |
| are on different logical devices (file systems).
 | |
| .TP 15
 | |
| [ENOSPC]
 | |
| The directory in which the entry for the new name is being placed
 | |
| cannot be extended because there is no space left on the file
 | |
| system containing the directory.
 | |
| .ig
 | |
| .TP 15
 | |
| [EDQUOT]
 | |
| The directory in which the entry for the new name
 | |
| is being placed cannot be extended because the
 | |
| user's quota of disk blocks on the file system
 | |
| containing the directory has been exhausted.
 | |
| ..
 | |
| .TP 15
 | |
| [EIO]
 | |
| An I/O error occurred while making or updating a directory entry.
 | |
| .TP 15
 | |
| [EROFS]
 | |
| The requested link requires writing in a directory on a read-only file
 | |
| system.
 | |
| .TP 15
 | |
| [EFAULT]
 | |
| .I Path
 | |
| points outside the process's allocated address space.
 | |
| .TP 15
 | |
| [EINVAL]
 | |
| .I From
 | |
| is a parent directory of
 | |
| .IR to ,
 | |
| or an attempt is made to rename ``.'' or ``..''.
 | |
| .TP 15
 | |
| [ENOTEMPTY]
 | |
| .I To
 | |
| is a directory and is not empty.
 | |
| .SH "SEE ALSO"
 | |
| .BR open (2)
 | 
